home *** CD-ROM | disk | FTP | other *** search
/ Enter 2005 August / EnterCD 08_2005.iso / dosapps / uniflash / UNIFLASH.TXT < prev   
Encoding:
Text File  |  2005-02-27  |  95.1 KB  |  1,814 lines

  1.                      UniFlash version 1.40 documentation
  2.                      -----------------------------------
  3.                    (C) 2005 Rainbow Software (Ondrej Zary)
  4.           Original version by Pascal Van Leeuwen and Galkowski Adam
  5.  
  6.  
  7. "Your program just saved the day for me!
  8.  I tried to use AWDFLASH.exe to flash my new Shuttle HOT-603 v2.0(AMD640)
  9.  with the new 603WWQ07.bin BIOS and it did! The only problem was that the
  10.  BIN file wasn't complete.
  11.  Evidently this destroyed the boot block too. I tried to restore the old
  12.  BIOS to that EEPROM on a HOT-565(430TX) with all the other flash
  13.  programs I could get my hands on to no avail. I was able to flash the
  14.  HOT-603's EEPROM to 565WIQ0E.bin and it worked just fine on the HOT-565
  15.  so I knew the chip it's self was still good. I finally gave up and
  16.  ordered a replacement chip this morning. This evening while surfing I
  17.  saw a  reference to you'r program on http://ping.be and downloaded it.
  18.  With the 'Expert' mode I was able to properly flash the Winbond
  19.  W29EE011-15 chip on the HOT-565 for the HOT-603."
  20.  - Jack Freeman
  21.  
  22.  
  23. 0.0            DISCLAIMER
  24. -------------------------
  25. THIS PROGRAM COMMUNICATES WITH THE CHIPSET AND FLASH ROM CHIP AT THE LOWEST
  26. HARDWARE LEVEL. USING THIS PROGRAM MAY BE DANGEROUS TO YOUR COMPUTER'S BIOS.
  27. THIS PROGRAM MAY CONTAIN BUGS AND MOST OF THE SUPPORTED HARDWARE IS UNTESTED.
  28. YOU ARE USING IT AT YOUR OWN RISK:
  29. NOBODY EXCEPT YOU IS RESPONSIBLE FOR ANY DAMAGE THIS PROGRAM MAY CAUSE !!!
  30.  
  31.  
  32. 0.1            COPYRIGHT and CO.
  33. --------------------------------
  34.  
  35. UniFlash is licensed under GNU GPL v2 since UniFlash v1.4.
  36. See LICENSE.TXT for the license text.
  37.  
  38.  
  39. 1.0            UniFlash? UNIFLASH??? What the HELL is it ??!!!
  40. --------------------------------------------------------------
  41.  
  42. UniFlash is a flash program, used to write a new BIOS on your FLASH ROM Chip.
  43. What's new there? , you may ask, there are already programs like this on
  44. Internet made by BIG BRANDS like AMI, AWARD or MR. Well... there is only a
  45. little difference: COMPLETE, WORKING SOURCE CODE IN PASCAL IS GIVEN FOR FREE!!
  46.  
  47. UniFlash is made to be universal - this can be useful when you're hot-flashing
  48. your bios in another motherboard.
  49.  
  50. Another thing: this flasher is mainly destinated for fearless people and
  51. experienced users. If it's your first adventure with flashing your BIOS, we
  52. recommend you strongly using these brand flashers. You'll have to understand
  53. we are just experienced computer users/programmers and we haven't materially
  54. the possibility to test every routine and chips we haven't. That's the main
  55. reason we release it. We hope people may help us in debugging and testing
  56. routines.
  57. NOTE by PvL: Brand name flashers have a tendency to be unstable (this is
  58.              especially true for AWDFLASH, which f*cked up my BIOS twice
  59.              so far, leaving me no other choice than to hot-flash) so if
  60.              you happen to be the lucky owner of one of the TESTED flash
  61.              chips I can really recommend using UNIFLASH instead ...
  62. NOTE by Rainbow:
  63. AWDFLASH IS REALLY BAD. When I was flashing BIOS on Abit SA6R, the verify
  64. failed. I retried flashing about 20 times, then it succeeded. But motherboard
  65. died after reboot. Luckily, after powering down and back up, BootBlock BIOS
  66. worked and I was able to flash the BIOS correctly from there.
  67.  
  68.  
  69. 2.0            What hardware do I need for UniFlash ?
  70. -----------------------------------------------------
  71.  
  72. Here's the minimum configuration you need to run UniFlash:
  73.        -At least a 386 (The whole thing works in flat real mode)
  74.        -RAM at least 2 times bigger than Flash ROM size, but less than 2GB
  75.        -MS DOS 4.0 and higher
  76.        -Known Flash ROM chip (see section 3.0)
  77.        -Supported chipset (see below) - note that all of them are PCI based
  78.         or c't Flasher 8-bit ISA card
  79.  
  80. ,----------------------------------------------------------------------------,
  81. | Don't forget to disable "Flash write protect" - either in system BIOS or   |
  82. | using a jumper on the motherboard.                                         |
  83. `----------------------------------------------------------------------------'
  84.  
  85. Here's a list of chipsets suported by Uniflash:
  86.  * means tested and functional,
  87.  # means tested, but doesn't work the way it should
  88.  unmarked chipsets are not tested
  89.  
  90. ,----------------------------------------------------------------------------,
  91. | Mfg     | Chipset(s)           | Comments                                  |
  92. `---------|----------------------|-------------------------------------------'
  93.  Intel    |*Triton 430FX         | No comments It works in 99% of cases
  94.           |*Triton II 430HX      |
  95.           |*Triton II 430VX      |
  96.           |*Triton III 430TX     |
  97.           |*Mobile 430MX         |
  98.           | Natoma 440FX         |
  99.           |*AGPSet 440LX/EX      |
  100.           | 450KX/GX             |
  101.           | Mecrucy 430LX        |
  102.           | Neptune 430NX        |
  103.           |*AGPSet 440BX/ZX      |
  104.           | AGPSet 440GX         |
  105.           |*i810                 | i810 tested and works OK, others should too
  106.           | i810E                |
  107.           | i810E2               |
  108.           | i815(P/G)            |
  109.           |*i815E(P/G)           |
  110.           | i815EM               |
  111.           | i820                 |
  112.           | i820E                |
  113.           | i830M(P/G)           |
  114.           | i840                 |
  115.           | i845                 |
  116.           | i845E                |
  117.           | i845G(E/L/V)/845PE   |
  118.           | i845MP/MZ            |
  119.           | i850(E)              |
  120.           |*i852GM/855GM         |
  121.           | i855PM               |
  122.           | i860                 |
  123.           | i865P(E)/G(V)/848P   |
  124.           | i875P                |
  125.           | E7205                |
  126.           | E7210                |
  127.           | E7221                |
  128.           | E7320                |
  129.           | E7500                |
  130.           | E7501                |
  131.           | E7505                |
  132.           | E7520                |
  133.           | E7525                |
  134.           | E8870                |
  135.           |*i910/915/925 series  |
  136.           | mobile 910/925 series|
  137. ----------|----------------------|--------------------------------------------
  138.  VIA      | 486 with VT82C505    | 486 chipsets with VT82C505 PCI bridge
  139.           | Appollo Master       |
  140.           | Apollo VP            |
  141.           |*Apollo VPX           |
  142.           |*Apollo VP2           |
  143.           | Apollo VP3           |
  144.           |*Apollo MVP3          |
  145.           | Apollo P6            |
  146.           | Apollo MVP4          | VIA chipsets are weird - some work, some
  147.           |*Apollo Pro           | don't.
  148.           |*Apollo Pro Plus/133  |
  149.           |*Apollo Pro 133A      | If you have "Flash Write protect" in BIOS,
  150.           |*Apollo ProMedia      | disable it and it should work.
  151.           | Apollo Pro 133Z/PM133|
  152.           | Apollo KX133         |
  153.           |*Apollo KT133(A)      |
  154.           | ProSavage KM133(A)   |
  155.           |*Apollo KT266(A)/KT333|
  156.           |*Apollo KT400(A)      |
  157.           |*UniChrome KM400(A)   |
  158.           | Apollo Pro 266       |
  159.           | Apollo Pro 266T      | These North Bridges are detected, but
  160.           | ProSavage P4M266     | aren't used in any VIA's chipset (??):
  161.           |*P4X266(A)/P4X333/400 | VT8662, VT8615, VT8361, VT3133
  162. ----------|----------------------|--------------------------------------------
  163.  AMD      |*AMD 640 (same as VIA | Works just fine
  164.           | Apollo VP2)          |
  165.           | AMD 750              | UniFlash supports true AMD chipsets since
  166.           |#AMD 760              | version 1.20. Their registers are very
  167.           | AMD 760MP            | similar to VIA. AMD 760 should work with
  168.           |*AMD 760MPX           | both VIA and AMD (does it really exist?)
  169.           |                      | south bridges.
  170.           | AMD 8000             |
  171.           | Geode SC1100         | Geode bought from National, these chips
  172.           | Geode SCx200         | have integrated south bridge
  173. ----------|----------------------|--------------------------------------------
  174.  SiS      |*85C496+497           | I got the datasheets, but not from SiS.
  175.           |*501/5101/5501        |
  176.           | 5511                 |
  177.           | 5571                 | To support 12 chipsets, I needed to write
  178.           |*5591/5592            | 5 different methods of enabling Flash ROM
  179.           | 5596                 | write access. (The more code, the more
  180.           |*5597/5598/5581/5120  | bugs :-)
  181.           |*530                  | All SiS South Bridges have the same
  182.           | 540                  | device ID $0008 (SiS 540 and 630 can have
  183.           | 600                  | either $0008 or $0018 - it can be
  184.           |*620                  | configured(!!!) through registers.
  185.           |*630                  |
  186.           | 635                  |
  187.           | 640                  | Boards with the new chipsets (540 and 630
  188.           | 645                  | and up) have often ITE IT8705F LPC Super IO
  189.           | 645DX                | (also called SiS 950 sometimes) which
  190.           | 648                  | allows to use regular Flash ROM on LPC bus.
  191.           | 650                  | It's tested and works.
  192.           | 651                  |
  193.           | 655                  |
  194.           | 730                  |
  195.           | 733                  |
  196.           |*735                  |
  197.           | 740                  |
  198.           |*745                  |
  199.           | 746                  |
  200.           |*748                  |
  201.           | 755                  |
  202. ----------|----------------------|--------------------------------------------
  203.  ALi      |*FinALi 486           | FinALi has very weird Flash ROM access but
  204.           |*Aladdin              | finally it works correctly.
  205.           | Aladdin III          |
  206.           | Aladdin IV/IV+       | All chipsets with M1533/M1543/M1535 South
  207.           |*Aladdin V            | Bridge should work.
  208.           | Aladdin 7            |
  209.           |*Aladdin Pro/Pro II   |
  210.           | Aladdin Pro III      | Aladdin TNT2
  211.           | CyberBLADE Aladdin i1|
  212.           | Aladdin Pro IV       |
  213.           |*ALiMAGiK 1           |
  214.           | Aladdin Pro 5(T/M)   | Unlisted chipsets are not fully detected,
  215.           | Aladdin-P4           | but should work if they use M1533/43/35 or
  216.           | CyberAladdin-P4      | M1523 South Bridge.
  217. ----------|----------------------|--------------------------------------------
  218.  SMSC     | VictoryBX-66         | i82443BX North Bridge with SMSC SLC90E66
  219.           |                      | South Bridge (UDMA-66 support)
  220. ----------|----------------------|--------------------------------------------
  221.  Winbond/ | W83C553F/4F          | South Bridge, probably very rare thing
  222.  Symphony |*Winbond W83697(H)F   | LPC Super I/Os with Flash ROM support
  223.  Labs     | Winbond W83697SF     |
  224.           | Winbond W83697UF     |
  225.           | Winbond W83627(H)F   | LPC Super I/Os without Flash ROM interface
  226.           |*Winbond W83627SF/GF  |
  227.           | Winbond W83627THF    |
  228.           | Winbond W83637HF     |
  229. ----------|----------------------|--------------------------------------------
  230.  ITE      | IT8871F/2F and       | Don't know where used, untested.
  231.           | IT8888F South Bridges| (No known chipset with these SBs)
  232.           |*IT8700F/8705F        | LPC Super I/Os with Flash ROM support
  233.           | IT8710F              | (used with SiS 540, SiS 630 and newer)
  234.           | IT8702F              | LPC Super I/Os without Flash ROM interface
  235.           | IT8711F              |
  236.           | IT8712F              |
  237.           | IT8722F              |
  238. ----------|----------------------|--------------------------------------------
  239.  Reliance/| ServerSet III LE     | All chipsets with OSB4 South Bridge should
  240.  Server   | ServerSet III HE     | work. Untested.
  241.  Works    |                      | I don't have any official info.
  242. ----------|----------------------|--------------------------------------------
  243.  National/| Vesuvius-LS          | Never seen this one.
  244.  PicoPower|                      | Untested
  245. ----------|----------------------|--------------------------------------------
  246.  National/| Geode GX1 (MediaGX)  | With Cx5510, Cx5520 and Cx5530(A) chips.
  247.  Cyrix    |                      | New Geode chips are AMD.
  248. ----------|----------------------|--------------------------------------------
  249.  OPTi     |*Viper M/N/NK/N+/DP   | Tested and works
  250.           | Viper Max/Vendetta   | Untested, but should work too
  251. ----------|----------------------|--------------------------------------------
  252.  HiNT     | VXPro-II             | Used on some PC Chips boards (like M559)
  253.           |                      | I think that it's Utron UC85C501/502
  254.           |                      | Not tested
  255. ----------|----------------------|--------------------------------------------
  256.  UMC      |*UM8881F+UM8886BF     | Don't have any datasheets, tested and works
  257. ----------|----------------------|--------------------------------------------
  258.  Micron   | Copperhead+Coppertail| Has no flash write protection. Untested
  259. ----------|----------------------|--------------------------------------------
  260.  Contaq/  | hyperCache           | CY82C691+CY82C693(U/UB)
  261.  Cypress  | 386/486 with PCI     | CY82C596/597+CY82C599
  262. ----------|----------------------|--------------------------------------------
  263.  nVidia   |*nForce               | Tested and works
  264.           |#nForce2              | nForce2 might not work
  265. ------------------------------------------------------------------------------
  266.  
  267. If your chipset is marked BXCel, VXPro, TXPro or something like that, it's a
  268. relabelled chipset (ALi, SiS or VIA) on a PC Chips board, with the exception
  269. of VXPro-II which is Utron.
  270.  
  271. The version 1.16d+ includes support for AMI's Flash Interface. It allows you
  272. to flash even if you have an unknown chipset (new AMI WinBIOS is necessary to
  273. use this feature). Starting from version 1.24, you must force using this mode,
  274. if you want to use it by giving the -AMI parameter. This is neccessary because
  275. it often doesn't work and hangs, preventing users from making BIOS backup.
  276.  
  277. UniFlash 1.39 and newer includes support for Asus Flash Interface. If you have
  278. an Asus board and UniFlash is unable to detect flash ROM or the flashing
  279. fails, try using -ASUS parameter. This uses code from BIOS to enable/disable
  280. flash ROM access.
  281.  
  282. 2.1            Support for specific boards
  283. ------------------------------------------
  284. These boards use non-standard write protection using general purpose outputs
  285. (GPOs) of the chipset.
  286. They're detected by reading the BIOS ID string from the top of 4GB. This means
  287. that the correct BIOS MUST be present in the socket when starting UniFlash or
  288. the flashing will not work.
  289. If the BIOS ID is not present at the top of 4GB, UniFlash tries to read it
  290. from F000 segment. This will not work if running in Bootblock BIOS.
  291.  
  292. 6A69RM4E = MicroStar MSI MS-6337 v3.0 (815EP Pro)
  293. 6A69RM4L = MicroStar MSI MS-6337 v5.0 (815EPT Pro, MS-6337LE5)
  294. 6A6S6A1A = Abit KG7(-Lite/-RAID)
  295. 6A69KA19 = Abit BF6, BE6-II v1.0 and v1.1
  296. 6A69KA1B = Abit BE6-II v1.2
  297. 6A69KA1C = Abit BE6-II v2.0 and BX133-RAID
  298. 2A69KA1Q = Abit ZM6
  299. 2A69KA1U = Abit BE6
  300. 6A6LMA19 = Abit KT7(-RAID), KT7A(-RAID), KT7E
  301. 6A6LMA1A = Abit KT7A(-RAID) v1.3
  302. A7V266   = Asus A7V266
  303. A7V8X-X  = Asus A7V8X-X
  304.  
  305. These boards detected using DMI - by using board vendor, name and version:
  306. MSI MS-6380 2.0 = MicroStar MSI K7T266 Pro2(-RU) v2.0, MS-6380LE v2.0
  307. MSI MS-6380E 1.0 = MicroStar MSI K7T266 Pro2-A, KT3 Ultra(-ARU), Ultra2(-R)
  308.  
  309. 2.2            Tested PCI cards
  310. -------------------------------
  311.  * means tested and functional
  312.  # means tested, but doesn't work
  313.  
  314. Cards with no specific support in UniFlash:
  315. * Adaptec 19160/29160N (AIC-7892B chip) - Winbond W29EE512
  316. * Adaptec 39160
  317. # AdvanSys ASB-3940UA
  318. # ATI Rage Magnum AGP
  319. # Matrox Millennium PCI
  320. * SIIG SC-PE4612 IDE controller (HighPoint HPT366) - SST 39SF010
  321.  
  322. I need datasheets for the cards (chips) that do not work.
  323.  
  324. Cards with specific support in UniFlash:
  325.   3Dfx Banshee
  326.   Sundance Technology ST201
  327.   STMicroelectronics STE10/100(A)
  328.   Winbond W89C840AF
  329.   SMSC LAN83C175 EPIC/C
  330.   VIA VT6102
  331.       VT6105M Rhine III
  332.   Realtek RTL8129/30/39
  333.           RTL8139 series
  334.           RTL8169 series
  335.   ADMtek AL981 Comet
  336.          AN983(B/BL) Centaur (B)
  337.          AN985(B/BL) Centaur (B)
  338.          ADM9511 Centaur II
  339.          ADM9513 Centaur II
  340.   Adaptec AIC-6915
  341.  
  342.  
  343. 3.0            What flash chips are supported by UniFlash ?
  344. -----------------------------------------------------------
  345.  
  346. UniFlash supports the following flash chips:
  347.  * means tested and functional,
  348.  # means tested, but doesn't work the way it should,
  349.  unmarked chips are not tested (note that a lot of chips are very similar to
  350.  one another though, so if one of them works then the rest should work fine
  351.  too)
  352.  
  353. ,----------------------------------------------------------------------------,
  354. | Flash ROM                       | Size                                     |
  355. `---------------------------------|------------------------------------------'
  356.   Alliance Semiconductor          |
  357.   ----------------------          |
  358.   AS29F040                        | 512KB
  359.   AS29F002T                       | 256KB
  360.   AS29F002B                       | 256KB
  361.   AS29F200T                       | 256KB
  362.   AS29F200B                       | 256KB
  363.   AS29LV400T                      | 512KB
  364.   AS29LV400B                      | 512KB
  365.   AS29LV800T                      | 1024KB
  366.   AS29LV800B                      | 1024KB
  367. ----------------------------------|-------------------------------------------
  368.   AMD                             |
  369.   ---                             |
  370.   Am28F256                        | 32KB
  371.   Am28F256A                       | 32KB
  372.   Am28F512                        | 64KB
  373.   Am28F512A                       | 64KB
  374.   Am28F010                        | 128KB
  375.   Am28F010A                       | 128KB
  376.   Am28F020                        | 256KB
  377.   Am28F020A                       | 256KB
  378.  *Am29F010(A/B)                   | 128KB
  379.  *Am29F040(B)                     | 512KB
  380.   Am29F080(B)                     | 1024KB
  381.   Am29F016(B)                     | 2048KB
  382.   Am29F017B                       | 2048KB
  383.   Am29F032B                       | 4096KB
  384.   Am29F100T                       | 128KB
  385.   Am29F100B                       | 128KB
  386.   Am29F200AT/BT                   | 256KB
  387.   Am29F200AB/BB                   | 256KB
  388.   Am29F400AT/BT                   | 512KB
  389.   Am29F400AB/BB                   | 512KB
  390.   Am29F800(B)T                    | 1024KB
  391.   Am29F800(B)B                    | 1024KB
  392.   Am29F160DT                      | 2048KB
  393.   Am29F160DB                      | 2048KB
  394.  *Am29F002(N)(B)T                 | 256KB
  395.   Am29F002(N)(B)B                 | 256KB
  396.   Am29F004BT                      | 512KB
  397.   Am29F004BB                      | 512KB
  398.   Am29LV010B                      | 128KB
  399.   Am29LV040B                      | 512KB
  400.   Am29LV017B                      | 2048KB
  401.   Am29LV033C                      | 4096KB
  402.   Am29LV065D                      | 8192KB
  403.   Am29LV081B                      | 1024KB
  404.   Am29LV001BT                     | 128KB
  405.   Am29LV001BB                     | 128KB
  406.   Am29LV002(B)T                   | 256KB
  407.   Am29LV002(B)B                   | 256KB
  408.   Am29LV004(B)T                   | 512KB
  409.   Am29LV004(B)B                   | 512KB
  410.   Am29LV008(B)T                   | 1024KB
  411.   Am29LV008(B)B                   | 1024KB
  412.   Am29LV200(B)T                   | 256KB
  413.   Am29LV200(B)B                   | 256KB
  414.   Am29LV400(B)T                   | 512KB
  415.   Am29LV400(B)B                   | 512KB
  416.   Am29LV800BT                     | 1024KB
  417.   Am29LV800BB                     | 1024KB
  418.   Am29LV160BT/DT                  | 2048KB
  419.   Am29LV160BB/DB                  | 2048KB
  420.   Am29LV116BT                     | 2048KB
  421.   Am29LV116BB                     | 2048KB
  422.   Am29LV320DT                     | 4096KB
  423.   Am29LV320DB                     | 4096KB
  424.   Am29SL800CT                     | 1024KB
  425.   Am29SL800CB                     | 1024KB
  426.   Am29SL160CT                     | 2048KB
  427.   Am29SL160CB                     | 2048KB
  428.   Am29PL160CB                     | 2048KB
  429. ----------------------------------|-------------------------------------------
  430.   AMIC                            |
  431.   ----                            |
  432.   A29010                          | 128KB
  433.   A29040(A/B)                     | 512KB
  434.   A29001(1)T                      | 128KB
  435.   A29001(1)B                      | 128KB
  436.  *A29002(1)T                      | 256KB
  437.   A29002(1)B                      | 256KB
  438.   A29400T                         | 512KB
  439.   A29400B                         | 512KB
  440.   A29800T                         | 1024KB
  441.   A29800B                         | 1024KB
  442.   A29L040                         | 512KB
  443.   A29L004T/400T                   | 512KB
  444.   A29L004B/400B                   | 512KB
  445.   A29L008T/800T                   | 1024KB
  446.   A29L008B/800B                   | 1024KB
  447.   A29L160T                        | 2048KB
  448.   A29L160B                        | 2048KB
  449. ----------------------------------|-------------------------------------------
  450.   ASD                             |
  451.   ---                             |
  452.  *AE29F1008 = Winbond W29EE011    | 128KB
  453.  *AE29F2008 = Winbond W29C020(C)  | 256KB
  454.  *AE49F2008 = Winbond W49F002U    | 256KB
  455. ----------------------------------|-------------------------------------------
  456.   Atmel                           |
  457.   -----                           |
  458.   AT29C256 or AT29C257            | 32KB
  459.   AT29C512                        | 64KB
  460.  *AT29C010(A)                     | 128KB
  461.   AT29C020(A)                     | 256KB
  462.   AT29C040A                       | 512KB
  463.   AT29LV256                       | 32KB
  464.   AT29LV512                       | 64KB
  465.   AT29xV010(A) series             | 128KB
  466.   AT29xV020 series                | 256KB
  467.   AT29xV040A series               | 512KB
  468.   AT49x512 series                 | 64KB
  469.   AT49x001(A)(N)T series          | 128KB
  470.   AT49x001(A)(N) series           | 128KB
  471.  *AT49x002(A)(N)T series          | 256KB
  472.   AT49x002(A)(N) series           | 256KB
  473.   AT49x008AT series               | 1024KB
  474.   AT49x008(A) series              | 1024KB
  475.   AT49x010 series                 | 128KB
  476.   AT49x020 series                 | 256KB
  477.   AT49x040(A) series              | 512KB
  478.   AT49x080 series                 | 1024KB
  479.   AT49x080T series                | 1024KB
  480.   AT49x2048(A) series             | 256KB
  481.   AT49x4096(A) series             | 512KB
  482.   AT49x8011T series               | 1024KB
  483.   AT49x8011 series                | 1024KB
  484.   AT49x160/161(4)T series         | 2048KB
  485.   AT49x160/161(4) series          | 2048KB
  486.   AT49BV320T/321T                 | 4096KB
  487.   AT49BV320/321                   | 4096KB
  488.   AT49LH002 (LPC/FWH)             | 256KB
  489.   AT49LH004 (LPC/FWH)             | 512KB
  490.   AT49LH00B4 (LPC/FWH)            | 512KB
  491.  *AT49LW080 (Firmware Hub)        | 1024KB
  492. ----------------------------------|-------------------------------------------
  493.   Bright Microelectronics         |
  494.   -----------------------         |
  495.   BM29F040  = Hyundai HY29F040    | 512KB
  496.   BM29F400T = Hyundai HY29F400T   | 512KB
  497.   BM29F400B = Hyundai HY29F400B   | 512KB
  498. ----------------------------------|-------------------------------------------
  499.   Catalyst                        |
  500.   --------                        |
  501.   CAT28F512                       | 64KB
  502.  *CAT28F010                       | 128KB
  503.   CAT28F015T                      | 192KB
  504.   CAT28F015B                      | 192KB
  505.   CAT28F020                       | 256KB
  506.  *CAT28F001T                      | 128KB
  507.  *CAT28F001B                      | 128KB
  508.   CAT28F002T                      | 256KB
  509.   CAT28F002B                      | 256KB
  510.   CAT28F150T                      | 192KB
  511.   CAT28F150B                      | 192KB
  512.   CAT29F(N)002T                   | 256KB
  513.   CAT29F(N)002B                   | 256KB
  514. ----------------------------------|-------------------------------------------
  515.   EON                             |
  516.   ---                             |
  517.   EN29F512                        | 64KB
  518.   EN29F010                        | 128KB
  519.   EN29F040(A)                     | 512KB
  520.   EN29F080                        | 1024KB
  521.  *EN29F002(A)T                    | 256KB
  522.   EN29F002(A)B                    | 256KB
  523.   EN29F800T                       | 1024KB
  524.   EN29F800B                       | 1024KB
  525.   EN29LV512                       | 64KB
  526.   EN29LV010                       | 128KB
  527.   EN29LV040                       | 512KB
  528.   EN29LV400T                      | 512KB
  529.   EN29LV400B                      | 512KB
  530.   EN29LV800(A)T                   | 1024KB
  531.   EN29LV800(A)B                   | 1024KB
  532.   EN29LV160T                      | 2048KB
  533.   EN29LV160B                      | 2048KB
  534. ----------------------------------|-------------------------------------------
  535.   Fujitsu                         |
  536.   -------                         |
  537.   MBM29F002TC                     | 256KB
  538.   MBM29F002BC                     | 256KB
  539.   MBM29F200TC                     | 256KB
  540.   MBM29F200BC                     | 256KB
  541.   MBM29F400TC                     | 512KB
  542.   MBM29F400BC                     | 512KB
  543.   MBM29F040C                      | 512KB
  544.   MBM29F033C                      | 4096KB
  545.   MBM29LV160TE                    | 2048KB
  546.   MBM29LV160BE                    | 2048KB
  547.   MBM29PL160TD                    | 2048KB
  548.   MBM29PL160BD                    | 2048KB
  549. ----------------------------------|-------------------------------------------
  550.   H.T.                            |
  551.   ----                            |
  552.  *M21561 = Macronix MX28F1000P    | 128KB
  553.  *M21032T = Macronix MX28F1000P   | 128KB
  554.  *M20271H = Macronix MX28F1000P   | 128KB
  555. ----------------------------------|-------------------------------------------
  556.   Hyundai                         |
  557.   -------                         |
  558.   HY29F040                        | 512KB
  559.   HY29F040A                       | 512KB
  560.   HY29F080                        | 1024KB
  561.   HY29F002T                       | 256KB
  562.   HY29F002B                       | 256KB
  563.   HY29F400T                       | 512KB
  564.   HY29F400B                       | 512KB
  565.   HY29F800T                       | 1024KB
  566.   HY29F800B                       | 1024KB
  567.   HY29LV160T                      | 2048KB
  568.   HY29LV160B                      | 2048KB
  569. ----------------------------------|-------------------------------------------
  570.   IMT                             |
  571.   ---                             |
  572.   IM29F001T                       | 128KB
  573.   IM29F001B                       | 128KB
  574.   IM29F002T                       | 256KB
  575.   IM29F002B                       | 256KB
  576.   IM29F004T                       | 512KB
  577.   IM29F004B                       | 512KB
  578.   IM29LV001T                      | 128KB
  579.   IM29LV001B                      | 128KB
  580.   IM29LV004T                      | 512KB
  581.   IM29LV004B                      | 512KB
  582. ----------------------------------|-------------------------------------------
  583.   Intel                           |
  584.   -----                           |
  585.   28F256(A)                       | 32KB
  586.   28F512                          | 64KB
  587.  *28F010                          | 128KB
  588.   28F020                          | 256KB
  589.  *28F001BX/BN-T                   | 128KB
  590.   28F001BX/BN-B                   | 128KB
  591.   28F002-T series                 | 256KB
  592.   28F002-B series                 | 256KB
  593.  #28F004-T series                 | 512KB
  594.   28F004-B series                 | 512KB
  595.   28F008-T series                 | 1024KB
  596.   28F008-B series                 | 1024KB
  597.   28F008SA                        | 1024KB
  598.   28F004Sx series                 | 512KB
  599.   28F008Sx series                 | 1024KB
  600.   28F016Sx series                 | 2048KB
  601.   28F016S5                        | 2048KB
  602.   28F004B3-T                      | 512KB
  603.   28F004B3-B                      | 512KB
  604.   28F008B3-T                      | 1024KB
  605.   28F008B3-B                      | 1024KB
  606.   28F016B3-T                      | 2048KB
  607.   28F016B3-B                      | 2048KB
  608.   28F320J5                        | 4096KB
  609.   28F320J3A                       | 4096KB
  610.   28F640J5                        | 8192KB
  611.   28F640J3A                       | 8192KB
  612.   28F128J3A                       | 16384KB
  613.  *82802AB (Firmware Hub)          | 512KB
  614.  *82802AC (Firmware Hub)          | 1024KB
  615. ----------------------------------|-------------------------------------------
  616.   ISSI                            |
  617.   ----                            |
  618.   IS28F010                        | 128KB
  619.   IS28F020                        | 256KB
  620. ----------------------------------|-------------------------------------------
  621.   Macronix                        |
  622.   --------                        |
  623.  *MX28F1000                       | 128KB
  624.  *MX28F1000P                      | 128KB
  625.   MX28F2000P                      | 256KB
  626.   MX28F2000T                      | 256KB
  627.   MX28F002T                       | 256KB
  628.   MX28F002B                       | 256KB
  629.   MX29F040                        | 512KB
  630.   MX29F080                        | 1024KB
  631.   MX29F016                        | 2048KB
  632.  *MX29F001T                       | 128KB
  633.  *MX29F001B                       | 128KB
  634.  *MX29F002(N)T                    | 256KB
  635.   MX29F002(N)B                    | 256KB
  636.   MX29F022T                       | 256KB
  637.   MX29F022B                       | 256KB
  638.   MX29F004T                       | 512KB
  639.   MX29F004B                       | 512KB
  640.   MX29F100T                       | 128KB
  641.   MX29F100B                       | 128KB
  642.   MX29F200T                       | 256KB
  643.   MX29F200B                       | 256KB
  644.   MX29F400T                       | 512KB
  645.   MX29F400B                       | 512KB
  646.   MX29F800T                       | 1024KB
  647.   MX29F800B                       | 1024KB
  648.   MX29F1610A                      | 2048KB
  649.   MX29F1615                       | 2048KB
  650.   MX29LV040                       | 512KB
  651.   MX29LV081                       | 128KB
  652.   MX29LV004T                      | 512KB
  653.   MX29LV004B                      | 512KB
  654.   MX29LV008T                      | 1024KB
  655.   MX29LV400T                      | 512KB
  656.   MX29LV400B                      | 512KB
  657.   MX29LV800T                      | 1024KB
  658.   MX29LV800B                      | 1024KB
  659.   MX29LV160T                      | 2048KB
  660.   MX29LV160B                      | 2048KB
  661.   MX29L1611                       | 2048KB
  662.   MX29L1611G                      | 2048KB
  663.   MX29L3211                       | 4096KB
  664. ----------------------------------|-------------------------------------------
  665.   Megawin                         |
  666.   -------                         |
  667.   MM29F040 = AMD Am29F040(B)/5V   | 512KB
  668. ----------------------------------|-------------------------------------------
  669.   Micron                          |
  670.   ------                          |
  671.   MT28F004-T = Intel 28F004-T     | 512KB
  672.   MT28F004-B = Intel 28F004-B     | 512KB
  673.   MT28F400-T = Intel 28F400-T     | 512KB
  674.   MT28F400-B = Intel 28F400-B     | 512KB
  675.   MT28F008-T = Intel 28F008-T     | 1024KB
  676.   MT28F008-B = Intel 28F008-B     | 1024KB
  677.   MT28F800-T = Intel 28F800-T     | 1024KB
  678.   MT28F800-B = Intel 28F800-B     | 1024KB
  679. ----------------------------------|-------------------------------------------
  680.   Mosel Vitelic                   |
  681.   -------------                   |
  682.   V29C51000T                      | 64KB
  683.   V29C51000B                      | 64KB
  684.   V29C51001T                      | 128KB
  685.   V29C51001B                      | 128KB
  686.   V29C51002T                      | 256KB
  687.   V29C51002B                      | 256KB
  688.   V29C51004T                      | 512KB
  689.   V29C51004B                      | 512KB
  690.   V29C51400T                      | 512KB
  691.   V29C51400B                      | 512KB
  692.   V29LC51000                      | 64KB
  693.   V29LC51001                      | 128KB
  694.   V29LC51002                      | 256KB
  695.   V29C31004T                      | 512KB
  696.   V29C31004B                      | 512KB
  697.   V29C31400T                      | 512KB
  698. ----------------------------------|-------------------------------------------
  699.   NexFlash Technologies           |
  700.   ---------------------           |
  701.   NX29F010  = AMD Am29F010        | 128KB
  702.   NX29F400B = AMD Am29F400B       | 512KB
  703. ----------------------------------|-------------------------------------------
  704.   PMC                             |
  705.   ---                             |
  706.  *Pm29F002T                       | 256KB
  707.   Pm29F002B                       | 256KB
  708.   Pm29F004T or Pm29LV104T         | 512KB
  709.   Pm29F004B or Pm29LV104B         | 512KB
  710.   Pm39F010 or 39LV010(R)          | 128KB
  711.   Pm39F020                        | 256KB
  712.   Pm39F040                        | 512KB
  713.   Pm39LV512(R)                    | 64KB
  714.   Pm39LV020                       | 256KB
  715.   Pm39LV040                       | 512KB
  716.   Pm49FL002                       | 256KB
  717.   Pm49FL004                       | 512KB
  718.   Pm49FL008                       | 1024KB
  719. ----------------------------------|-------------------------------------------
  720.   SHARP                           |
  721.   -----                           |
  722.   LHF00L02/6/7 (LPC)              | 1024KB
  723.   LHF00L03/4/5 (FWH)              | 1024KB
  724.   LHF00L01 (LPC)                  | 2048KB
  725. ----------------------------------|-------------------------------------------
  726.   SST                             |
  727.   ---                             |
  728.   28EE010/011                     | 128KB
  729.   29EE512                         | 64KB
  730.  *29EE010                         | 128KB
  731.  *29EE020                         | 256KB
  732.   28x040(A) series                | 512KB
  733.   29x512 series                   | 64KB
  734.   29x010 series                   | 128KB
  735.   29x020 series                   | 256KB
  736.   29SF512                         | 64KB
  737.   29SF010                         | 128KB
  738.   29SF020                         | 256KB
  739.   29SF040                         | 512KB
  740.   29VF512                         | 64KB
  741.   29VF010                         | 128KB
  742.   29VF020                         | 256KB
  743.   29VF040                         | 512KB
  744.  *49LF020 (LPC)                   | 256KB
  745.  *49LF020A (LPC)                  | 256KB
  746.   49LF030(A) (LPC)                | 384KB
  747.   49LF040 (LPC)                   | 512KB
  748.   49LF080(A) (LPC)                | 1024KB
  749.  *49LF002(A) (Firmware Hub)       | 256KB
  750.   49LF003A (Firmware Hub)         | 384KB
  751.   49LF004 (Firmware Hub)          | 512KB
  752.   49LF004A/B (Firmware Hub)       | 512KB
  753.   49LF008 (Firmware Hub)          | 1024KB
  754.  *49LF008A (Firmware Hub)         | 1024KB
  755.   39SF512                         | 64KB
  756.   39SF010(A)                      | 128KB
  757.  *39SF020(A)                      | 256KB
  758.   39SF040                         | 512KB
  759.   39xF512 series                  | 64KB
  760.   39xF010 series                  | 128KB
  761.  *39xF020 series                  | 256KB
  762.   39xF040 series                  | 512KB
  763.   39xF080 series                  | 1024KB
  764.   39xF016 series                  | 2048KB
  765. ----------------------------------|-------------------------------------------
  766.   STMicroelectronics              |
  767.   ------------------              |
  768.   M28F256                         | 32KB
  769.   M28F512                         | 64KB
  770.   M28F101                         | 128KB
  771.   M28F201                         | 256KB
  772.   M28W201                         | 256KB
  773.   M29F512B                        | 64KB
  774.   M29F010B                        | 128KB
  775.   M29F040(B)                      | 512KB
  776.   M29F080A                        | 1024KB
  777.   M29F016B                        | 2048KB
  778.   M29F002(B)(N)T                  | 256KB
  779.   M29F002(B)B                     | 256KB
  780.   M29F100(B)T                     | 128KB
  781.   M29F100(B)B                     | 128KB
  782.   M29F200(B)T                     | 256KB
  783.   M29F200(B)B                     | 256KB
  784.   M29F400(B)T                     | 512KB
  785.   M29F400(B)B                     | 512KB
  786.   M29F800AT                       | 1024KB
  787.   M29F800AB                       | 1024KB
  788.   M29F160BT                       | 2048KB
  789.   M29F160BB                       | 2048KB
  790.   M29W512B                        | 64KB
  791.   M29W010B                        | 128KB
  792.   M29W022BT                       | 256KB
  793.   M29W022BB                       | 256KB
  794.   M29W040(B)                      | 512KB
  795.   M29W200BT                       | 256KB
  796.   M29W200BB                       | 256KB
  797.   M29W400(B)T                     | 512KB
  798.   M29W400(B)B                     | 512KB
  799.   M29W800(A)T                     | 1024KB
  800.   M29W800(A)B                     | 1024KB
  801.   M29W160BB/DB                    | 2048KB
  802.   M29W004(B)T                     | 512KB
  803.   M29W004(B)B                     | 512KB
  804.   M29W008(A)T                     | 1024KB
  805.   M29W008(A)B                     | 1024KB
  806.   M50FW002 (FWH)                  | 256KB
  807.   M50LPW002 (LPC)                 | 256KB
  808.  *M50FW040 (FWH)                  | 512KB
  809.   M50LPW040 (LPC)                 | 512KB
  810.   M50FLW040A (LPC/FWH)            | 512KB
  811.   M50FLW040B (LPC/FWH)            | 512KB
  812.  *M50FW080 (FWH)                  | 1024KB
  813.   M50LPW080 (LPC)                 | 1024KB
  814.   M50FLW080A (LPC/FWH)            | 1024KB
  815.   M50FLW080B (LPC/FWH)            | 1024KB
  816.   M50FW016 (FWH)                  | 2048KB
  817. ----------------------------------|-------------------------------------------
  818.   SyncMOS                         |
  819.   -------                         |
  820.   F29C51001T = Mosel V29C51001T   | 128KB
  821.   F29C51001B = Mosel V29C51001B   | 128KB
  822.  #F29C51002T = Mosel V29C51002T   | 256KB
  823.   F29C51002B = Mosel V29C51002B   | 256KB
  824.   F29C51004T = Mosel V29C51004T   | 512KB
  825.   F29C51004B = Mosel V29C51004B   | 512KB
  826.   F29C31004T = Mosel V29C31004T   | 512KB
  827.   F29C31004B = Mosel V29C31004B   | 512KB
  828.   F29C31400T = Mosel V29C31400T   | 512KB
  829. ----------------------------------|-------------------------------------------
  830.   Texas Instruments               |
  831.   -----------------               |
  832.   TMS29xF040                      | 512KB
  833.   TMS28F002A-T = Intel 28F002-T   | 256KB
  834.   TMS28F002A-B = Intel 28F002-B   | 256KB
  835.   TMS28F200A-T = Intel 28F200-T   | 256KB
  836.   TMS28F200A-B = Intel 28F200-B   | 256KB
  837.   TMS28F200BZT = Intel 28F200-T   | 256KB
  838.   TMS28F200BZB = Intel 28F200-B   | 256KB
  839.   TMS28F400A-T = Intel 28F400-T   | 512KB
  840.   TMS28F400A-B = Intel 28F400-B   | 512KB
  841.   TMS28F400BZT = Intel 28F400-T   | 512KB
  842.   TMS28F400BZB = Intel 28F400-B   | 512KB
  843.   TMS28F004A-T = Intel 28F004-T   | 512KB
  844.   TMS28F004A-B = Intel 28F004-B   | 512KB
  845.   TMS28F008A-T = Intel 28F008-T   | 1024KB
  846.   TMS28F008A-B = Intel 28F008-B   | 1024KB
  847.   TMS28F800A-T = Intel 28F800-T   | 1024KB
  848.   TMS28F800A-B = Intel 28F800-B   | 1024KB
  849.   TMS28F010A/B = Intel 28F010     | 128KB
  850.   TMS28F020    = Intel 28F020     | 256KB
  851.   TMS28F512A   = Intel 28F512     | 64KB
  852.   TMS29F002RT  = AMD Am29F002T    | 256KB
  853.   TMS29F002RB  = AMD Am29F002B    | 256KB
  854.   TMS29F008T   = AMD Am29F800T    | 1024KB
  855.   TMS29F008B   = AMD Am29F800B    | 1024KB
  856.   TMS29F010    = AMD Am29F010     | 128KB
  857.   TMS29F040    = AMD Am29F040     | 512KB
  858.   TMS29F400T   = AMD Am29F400AT   | 512KB
  859.   TMS29F400B   = AMD Am29F400AB   | 512KB
  860.   TMS29F800T   = AMD Am29F800T    | 1024KB
  861.   TMS29F800B   = AMD Am29F800B    | 1024KB
  862.   TMS29LF008T  = AMD Am29LV008T   | 1024KB
  863.   TMS29LF008B  = AMD Am29LV008B   | 1024KB
  864.   TMS29LF800T  = AMD Am29LV800BT  | 1024KB
  865.   TMS29LF800B  = AMD Am29LV800BB  | 1024KB
  866. ----------------------------------|-------------------------------------------
  867.   Winbond                         |
  868.   -------                         |
  869.  *W29x010/011/012 series          | 128KB
  870.  *W29C020(C)                      | 256KB
  871.   W29C040                         | 512KB
  872.   W29x512 series                  | 64KB
  873.   W39F010                         | 128KB
  874.   W39L512                         | 64KB
  875.   W39L010                         | 128KB
  876.   W39L020                         | 256KB
  877.   W39L040                         | 512KB
  878.   W39L040A                        | 512KB
  879.   W39V040A (LPC)                  | 512KB
  880.   W39V040FA (Firmware Hub)        | 512KB
  881.  *W49F002U                        | 256KB
  882.   W49F020                         | 256KB
  883.   W49V002(A) (LPC)                | 256KB
  884.   W49V002F(A) (Firmware Hub)      | 256KB
  885. ------------------------------------------------------------------------------
  886.  
  887. 3.1            Flash ROM pinout and notes
  888. -----------------------------------------
  889.  
  890. Some 12V Flash ROMs require 12V voltage not only to flash, but also to detect.
  891. If you're trying to flash 12V chip, first check that you have 12V on the VPP
  892. pin in the socket on motherboard. Flash write protect jumper usually removes
  893. 12V from this pin.
  894. When some parts of the chip are write protected, 12V on VPP/#RESET pin will
  895. usually allow these protected parts to be flashed (unless the chip has N in
  896. the name - e.g. MX29F002NT - this means that RESET pin is not connected).
  897.  
  898. Be sure that Flash ROM is inserted the correct way in the socket (key on the
  899. chip must match with key on the socket) BEFORE powering up (if you're
  900. hot-flashing, double check chip orientation before inserting it into socket).
  901. Inserting it wrong way will DESTROY the chip - VCC will be swapped with GND
  902. and if there's 12V on the VPP pin, it will be connected to Q3 data pin...
  903.  
  904. Flash ROM pinout (32-pin DIP):
  905.           _____KEY_____
  906.     VPP -|     \_/     |- VCC     VPP = Programming voltage (12V)
  907.     A16 -|             |- #WE     VCC = Operating voltage (5V)
  908.     A15 -|             |- A17     GND = Ground
  909.     A12 -|             |- A14     A0..A17 = Address input pins
  910.      A7 -|             |- A13     Q0..Q7  = Data input/output pins
  911.      A6 -|             |- A8      #WE = Write enable
  912.      A5 -|             |- A9      #OE = Output enable
  913.      A4 -|             |- A11     #CE = Chip enable
  914.      A3 -|             |- #OE     (# means active low signal)
  915.      A2 -|             |- A10
  916.      A1 -|             |- #CE     Notes:
  917.      A0 -|             |- Q7        - some chips have #RESET instead of VPP
  918.      Q0 -|             |- Q6        - this is 256KB chip
  919.      Q1 -|             |- Q5        - 512KB chips have A18 instead of VPP
  920.      Q2 -|             |- Q4        - 128KB chips have NC instead of A17
  921.     GND -|_____________|- Q3        - 64KB chips have NC instead of A17 & A16
  922.  
  923.  
  924. 4.0            Help! I don't understand the sources !!!
  925. -------------------------------------------------------
  926.  
  927. If you have problems understanding something mail me (address at the end).
  928. Have a look also on the ADDCHIP.FAQ file. It explains how to add new chips
  929. plus some details.
  930.  
  931.  
  932. 5.0            ADVANCED submenu
  933. -------------------------------
  934.  
  935. There's ADVANCED submenu in UniFlash, which contains possibly dangerous
  936. functions. Since v1.33, flashing is done including bootblock by default. This
  937. is less dangerous that flashing a new BIOS and leaving incompatible bootblock
  938. from previous BIOS there. And more, the bootblock is not exactly defined
  939. anywhere - some BIOSes might use bigger bootblock than other, which can cause
  940. problems.
  941.  
  942. 5.1            Making an emergency disk
  943. ---------------------------------------
  944.  
  945. It is always nice to have an emergency disk handy in case something goes
  946. wrong. You see, most flash BIOS's incorporate something called a 'boot block'
  947. and UNIFLASH will not normally overwrite it so it remains intact.
  948. The boot block contains just enough code to boot up your computer with basic
  949. peripheral support to enable you to flash in a working BIOS in case something
  950. went wrong.
  951.  
  952. To make an emergency disk one would do the following:
  953. -make a DOS (or Win95/Win98, NOT ANY OTHER) system disk using "format a: /S"
  954. -copy uniflash to that disk
  955. -copy a working bios image (preferably a backup that was made while the system
  956.  was still a-ok) to the disk
  957. -make an AUTOEXEC.BAT containing:
  958. @UNIFLASH -E <name of BIOS image file>
  959.  
  960. NOTE: Whatever you do, do *NOT* load HIMEM.SYS. The boot block lacks support
  961.       routines that HIMEM.SYS requires, resulting in very nice crashes.
  962.       And I know from experience ... !! In general, keep the boot disk as
  963.       clean as possible, remove drvspace.bin and dblspace.bin.
  964.  
  965. Make sure UNIFLASH and the BIOS image are on the disk as the boot block only
  966. supports the floppy drive, you won't be able to access any harddrive !!
  967. When you boot from this emergency disk the working BIOS image will
  968. automatically (without any intervention by you) be flashed into the flash ROM
  969. by UNIFLASH. This is very convenient as the boot block has no support for PCI
  970. or AGP video cards, so you won't be able to SEE anything in the process unless
  971. you replace your PCI videocard with an old ISA one (hint!). If you have
  972. motherboard with i815(E) chipset and you're using onboard video, it will
  973. probably not work in boot block mode (because graphics BIOS is stored in main
  974. Flash ROM chip) - try to put an AGP card in (there are no ISA slots).
  975.  
  976. UNIFLASH will give you some audible feedback, though:
  977. first short beep: UNIFLASH invoked, reading BIOS image
  978. second short beep: done reading BIOS image, starting to flash
  979. chime sound: done flashing, reset your system
  980. long continuous beep: some error occured, press any key to retry operation
  981.  
  982. 5.2            Command-line parameters
  983. --------------------------------------
  984. UNIFLASH [-H|-?|[-PCIROM [B D F]|-AMI|-ASUS|-BASE xxxxx|CTFLASH [xxx]]
  985.  [-E fname][-SAVE fname|-CHIPLIST|-FORCE xxxx][-REPAIR][-LOG][-MONO]
  986.  [-CMOSS fname][-CMOSR fname][-CMOSC]][-UNLOCK][-QUIT][-REBOOT]
  987.  
  988. -H or -?        Shows this help screen
  989. -E fname        Flashes fname to Flash ROM with no prompts
  990. -LOG            Enables auto-logging to UNIFLASH.LOG
  991. -MONO           Use if you have problems with colors on monochrome monitor
  992. -CTFLASH        Flash ROM in c't Flasher 8-bit ISA card [xxx=port]
  993. -PCIROM         Flash ROM on a PCI card instead of system ROM
  994.   [BUS DEV FUN] Manually specify PCI device (decimal numbers)
  995. -AMI, -ASUS     Use AMI Flash Interface, Use Asus Flash Interface
  996. -CHIPLIST       Show list of supported flash chips with their numbers
  997. -FORCE xxxx     Force using routines for chip xxxx (4 hex digits)
  998. -BASE xxxxx     Set ROM Base to address xxxxx (at least 5 hex digits)
  999. -REPAIR         Repair erased chip ID (Winbond and SST chips)
  1000. -SAVE fname     Write current bios image to file fname
  1001. -CMOSS/R fname  Save/restore CMOS settings to/from file fname
  1002. -CMOSC          Clears CMOS settings
  1003. -UNLOCK         Unlock locked bootblocks (e.g. on W29C020)
  1004. -QUIT           Quits (e.g. UNIFLASH -SAVE BACKUP.BIN -QUIT)
  1005. -REBOOT         Reboot after flashing (use together with -E)
  1006.  
  1007. Parameters are executed in the same order as they are entered on the command
  1008. line - so you can use e.g. "uniflash -cmoss cmos.bak -cmosc" to save CMOS
  1009. settings to file called cmos.bak and then clear the CMOS.
  1010. Some parameters can't be used together - e.g. -AMI can't be used with -PCIROM.
  1011.  
  1012. -E: Flashes BIOS image from file fname including bootblock without
  1013.     any user input
  1014. -LOG: Enables logging of all important events into file UNIFLASH.LOG. Use this
  1015.       when you are sending bug reports and attach this file.
  1016. -CTFLASH: Selects ROM on c't Flasher 8-bit ISA card. This card supports
  1017.           Flash ROMs up to 512KB. Port is autodetected or can be specified
  1018.           manually as optional parameter (hex 200-3FC).
  1019. -PCIROM: Selects ROM on a PCI device instead of system ROM. Works only with
  1020.          some cards. You can optionally specify the device you want to use.
  1021.          (e.g. -PCIROM 0 3 1 = BUS 0, DEVICE 3, FUNCTION 1)
  1022. -AMI: Uses interface supported by some AMI BIOSes instead of detecting the
  1023.       chipset and writing to chipset registers to disable write protection.
  1024.       (I haven't seen this working anywhere yet...)
  1025. -ASUS: Uses interface supported by newer Asus BIOSes. This one really works
  1026.        (tested on A7V133-C, A7V266 and A7V8X-X)
  1027. -CHIPLIST: Displays a list of supported chips with their IDs which are needed
  1028.            for use with -FORCE parameter.
  1029. -FORCE: Disable Flash ROM autodetection and set chip type to the one specified
  1030.         by following ID (4 hex digits) - see -CHIPLIST parameter.
  1031. -BASE: Set ROM base address manually and allow running without PCI bus.
  1032.        Useful for memory-mapped flash programming cards with old systems.
  1033. -REPAIR: ID on some Winbond and SST chips can be changed which can cause the
  1034.          chip not being recognized by any software (including BIOS - AMI BIOS
  1035.          does not work in that chip, Award BIOS displays Unknown Flash Type).
  1036.          This option can change the ID on these chips. Because UniFlash does
  1037.          not know the correct ID, you must specify it using -FORCE parameter.
  1038. -SAVE: Save current BIOS to file fname.
  1039. -CMOSS: Save current CMOS settings to file fname. CMOS memory size is detected
  1040.         automatically.
  1041. -CMOSR: Restore CMOS settings from file fname. CMOS memory size is detected
  1042.         automatically.
  1043. -CMOSC: Clear CMOS memory.
  1044. -UNLOCK: Bootblock lock can be disabled on some chips (tested on W29C020) by
  1045.          using this parameter.
  1046.  
  1047.  
  1048. 6.0            How to support UniFlash?
  1049. ---------------------------------------
  1050.  
  1051. If you want to help me in adding support for new chips, in testing the whole
  1052. thing or bugfixing, mail me, I'll put your name in credits at the end.
  1053. I want your opinions & experiences to make flashing BIOS an easy and safe
  1054. operation, where you doesn't need tons of flashers (if you multiply the
  1055. number of chipsets by the number of Flash ROM memories available, you'll
  1056. understand better what we're talking about).
  1057.  
  1058. 7.0            Credits
  1059. ---------------------------------------
  1060.  
  1061. Ondrej Zary (Rainbow Software) - Continues to develop this program after the
  1062. authors (below) stopped the development. Done all that is new after v1.17b.
  1063. Added tons of Flash ROMs and chipsets, fixed a lot of bugs, got datasheets
  1064. from ALi.
  1065.  
  1066. Pascal van Leeuwen - Made first design, chipset handling routines, a primitive
  1067. write function for SST, WINBOND and INTEL, added flat real mode, etc...
  1068. Improved SST & Winbond routines, made AMD routines work, added Atmel support,
  1069. added lots & lots of flash chips (of which most are currently untested ...)
  1070. Added reliability improvements (backup of old BIOS, verify after write)
  1071. Tested both Winbond & SST chips, became an expert at hot-flashing ;-)
  1072.  
  1073. Galkowski Adam - Initiated the UniFlash project, made modular structure, made
  1074. the current design, added functions handling DMI, PnP and bootblock, added
  1075. expert mode, made the previous crappy AMD support, wrote this doc, tested SST
  1076. routines, had multiple rendez-vous with "Award BootBlock BIOS",
  1077. advertised, etc...
  1078.  
  1079.  
  1080. 8.0            How to contact me
  1081. --------------------------------
  1082. You can contact me (Rainbow Software) by:
  1083. web    : http://www.uniflash.org - UniFlash ONLY
  1084. web    : http://www.rainbow-software.org
  1085. (new versions should be at all the addresses above)
  1086. e-mail : rainbow@rainbow-software.org
  1087.  
  1088. When sending reports that something doesn't work, always send the log file!
  1089.  
  1090. 9.0            Revision history
  1091. -------------------------------
  1092. 1.40       -changed license to GNU GPL v2
  1093. 1.39       -added -UNLOCK parameter to unlock bootblocks on some chips (like
  1094.             Winbond W29C020)
  1095.            -added logging to LPC detection
  1096.            -added Winbond W83627(H)F, SF/GF, THF and W83637HF and also
  1097.             ITE IT8702F, IT8711F, IT8712F and IT8722F detection (these don't
  1098.             have flash ROM interface but they have GPIO pins)
  1099.            -simplified LPC detection and access code
  1100.            -added BIOS ID reading from F000 segment if not found at top of 4GB
  1101.            -added specific support for Asus A7V266 and A7V8X-X (they use
  1102.             Super I/O GPO pins) and Abit ZM6, BE6 (same as BX133-RAID)
  1103.            -added Winbond W39V040A (LPC) and W39L040A chips
  1104.            -added support for Asus flash interface! (-ASUS parameter) - with
  1105.             this, it should be possible to flash all newer Asus boards
  1106.            -added support for SMBIOS/DMI board identification (needed for
  1107.             specific support for boards with non-Award BIOSes)
  1108.            -added specific support for MSI MS-6380 2.0 and MS-6380E 1.0
  1109.            -added new Intel chipsets: E7210, E7221, E7320, E7520, E7525,
  1110.             E8870, mobile 910/915 series
  1111.            -added VIA VT8237 south bridge and UniChrome KM400(A) chipset
  1112.            -was never released
  1113. 1.38       -fixed quitting on some boards immediately after running
  1114.            -fixed unprotect for ST FWH and LPC chips (one F is missing from
  1115.             the (un)protect register adresses)
  1116.            -fixed unprotect for ST 50FLW080A and B
  1117.            -added BIOS IDs of Abit BF6, all BE6-II variants, all KT7 variants
  1118.             and MSI MS-6337 v5.x
  1119.            -BIOS ID is now shown in lower right corner when detected & needed
  1120.            -updated SST LPC chip names, so they're marked "(LPC)"
  1121.            -fixed problems with some W49F002U chips by removing a piece of
  1122.             unknown code from AMD flashing routine
  1123. 1.37       -removed STMicroelectronics M28F102 (is 16-bit)
  1124.            -added STMicroelectronics M50FW016 (FWH), M50FLW040A (LPC/FWH),
  1125.             M50FLW040B (LPC/FWH), M50FLW080A (LPC/FWH), M50FLW080B (LPC/FWH),
  1126.             M28W201 chips
  1127.            -added AMIC A29800T, A29800B, A29L004T/400T, A29L004B/400B,
  1128.             A29L008T/800T, A29L008B/800B, A29L160T, A29L160B, A29L040 chips
  1129.            -added IMT IM29LV001T, IM29LV001B chips
  1130.            -added EON EN29F512, EN29F010, EN29LV512, EN29LV010, EN29LV040,
  1131.             EN29LV400T, EN29LV400B, EN29LV800(A)T, EN29LV800(A)B, EN29LV160T,
  1132.             EN29LV160B
  1133.            -added SST 49LF020A chip
  1134.            -added SHARP LHF00L02/6/7 (LPC), LHF00L03/4/5 (FWH) and LHF00L01
  1135.             (LPC) chips
  1136.            -added Intel 915G/P/925X chipsets with new ICH6
  1137.            -added OPTi Viper M/N/NK/N+/DP, changed Vendetta 82C750 to
  1138.             Viper Max/Vendetta 82C750 and fixed a bug in OPTi chipset support
  1139.            -added VIA 486 chipsets with VT82C505 PCI bridge
  1140. 1.36       -c't Flasher can now be used on systems without PCI bus
  1141.            -fixed a bug causing -save and -e parameters to not work correctly
  1142.             when used together
  1143.            -added AMD 8000 chipset detection
  1144.            -fixed 256B CMOS size detection on chipsets that provide access to
  1145.             full CMOS range using 72/73h registers
  1146.            -added AMD Geode SC1100 and SC1200/2200/3200 support and Cx5510
  1147.             and Cx5520 device IDs
  1148. 1.35       -fixed i82378ZB vs. i82379AB identify
  1149.            -fixed a bug causing hangs with Winbond LPC Super I/O chips
  1150.            -added SiS 964 south bridge detection
  1151. 1.34       -fixed a bug causing arithmetic overflow with chips with many
  1152.             sectors (such as SST 49LF008A FWH)
  1153.            -fixed problems with c't Flasher and 5V chips smaller than 512KB
  1154.             that use pin 1 as #RESET
  1155.            -added some new PMC chips: Pm39F010, Pm39F020, Pm39F040, Pm39LV020,
  1156.             Pm39LV040
  1157.            -fixed problems with logging on a write protected drive
  1158.            -added support for non-standard BIOS write protection methods by
  1159.             detecting BIOS ID string and matching the board in the list of
  1160.             known boards
  1161.            -added alternative method of supporting 256KB chips on M1533/M1543
  1162.             south bridges - through GPO[19] (used e.g. on Acer V72MA board)
  1163.             (although it does not seem to work...)
  1164.            -added Intel 865P(E)/G(V)/848P chipsets
  1165.            -added some Atmel chips: AT49x2048(A) series, AT49LH002, AT49LH004,
  1166.             AT49LH00B4 and AT49LW080
  1167. 1.33       -fixed reboot when running on QDI Titanium IB+ board
  1168.            -no more flashing when file size is not correct
  1169.            -added support for Winbond LPC Super I/O chips W83697(H)F,
  1170.             W83697SF and W83697UF
  1171.            -fixed problems with bootblock erasing on Atmel AT49x001(N)(T) and
  1172.             AT49x002(N)(T) chips (bootblock can't be erased separately -> chip
  1173.             erase must be used)
  1174.            -english-only - other languages are not compiled in the binary
  1175.             release because the translations are outdated
  1176.            -flash including bootblock by default, flashing without bootblock
  1177.             is available from the advanced menu
  1178.            -Restore backup CMOS data in CMOS menu now works
  1179. 1.32       -added support for c't flasher 8-bit ISA card, autodetecting port
  1180.             and memory base, supports Flash ROMs up to 512KB
  1181.            -register contents in LOG file are now written as hex numbers
  1182. 1.31       -added support for ALi Aladdin, the ALi's first Pentium chipset
  1183.             (uses low E and F segments, disabling shadow during read access)
  1184.            -if the south bridge is not found, the first device with no class
  1185.             code is assumed to be south bridge (for old chipsets)
  1186.            -fixed one line more cleared when changing drives in file browser
  1187.            -modified chipset detection and identifying code to allow easier
  1188.             implementation of support for new chipsets
  1189.            -fixed error when opening files with read-only attribute set
  1190.            -modified i8xx chipset code to support FWHs up to 4MB (32Mbit)
  1191.            -added SiS 648, 651, 655, 733, 745, 746, 748, 755 chipsets
  1192.            -added i845E, i845G(E/L/V)/845PE, i845MP/MZ, i852GM/855GM, i855PM,
  1193.             i875P, E7205, E7501, E7505 chipsets
  1194.            -added VIA Apollo KT333, KT400(A), Apollo Pro 266T, P4X400
  1195.            -added ALi Aladdin 7, Aladdin Pro III (TNT2), CyberBLADE Aladdin i1,
  1196.             Aladdin Pro 5(T/M), Aladdin-P4, CyberAladdin-P4
  1197.            -modified multi-language code to save some memory by initializing
  1198.             only the selected language (also reduced EXE file size)
  1199.            -moved PCI card support into separate unit (PCICARDS.PAS) and added
  1200.             specific support for these PCI network cards:
  1201.              STMicroelectronics STE10/100(A), Winbond W89C840AF,
  1202.              SMSC LAN83C175 EPIC/C, VIA VT6102, VT6105M Rhine III
  1203.              Realtek RTL8129/30/39, RTL8139 series, RTL8169 series
  1204.              ADMtek AL981 Comet, AN983,985(B/BL) Centaur (B),
  1205.              ADM9511,9513 Centaur II, Adaptec AIC-6915
  1206.            -added support for PMC Pm49FL002/004/008 FWHs/LPCs
  1207. 1.30       -added timeouts to all program/erase routines so there should never
  1208.             be any lockups, even if Flash ROM does not respond
  1209.            -fixed incorrect ROM Base when no Flash ROM detected
  1210.            -fixed (forced) displayed when chip was forced and then redetected
  1211.            -graph color during flashing now represents the write status -
  1212.             green means write OK, red means write failed (timeout/error)
  1213.            -fixed GenPageProg and AtmelPageProg to avoid extra retries for
  1214.             chips that do not support error bit - it slowed down flashing and
  1215.             reduced chip life (nice to see how fast W29EE011 really is)
  1216.            -added support for i82801DB ICH4
  1217.            -added a question when flashing without bootblock and there's
  1218.             bootblock mismatch allowing user to flash including bootblock
  1219.             (to prevent users from killing the BIOS because of not reading
  1220.             this manual...)
  1221.            -removed PnP (ESCD) manipulation (DMI was removed some time ago),
  1222.             it was very dangerous (no checks if there really is ESCD data -
  1223.             easy way to kill the BIOS) and useless
  1224.            -fixed a bug in -BASE parameter (thanks to Krystian Rozycki)
  1225.            -fixed bug in protect/unprotect code for all FWHs that prevented
  1226.             flashing from working
  1227.            -added nVidia nForce support
  1228. 1.29       -added some Winbond Flash ROMs: W39L512, W39F010, W39L010, W39L020,
  1229.             W39L040, W39V040FA (FWH) and W49F020
  1230.            -found old Catalyst datasheets - fixed CAT28F150T, added CAT28F015T
  1231.             and CAT28F015B
  1232.            -better PCI ROM flashing, added 3Dfx Banshee support
  1233.            -added Micron Copperhead+Coppertail chipset detection (has no flash
  1234.             write protection)
  1235.            -added Contaq/Cypress hyperCache chipset (CY82C691+CY82C693(U/UB))
  1236.             and 386/486 chipsets with PCI (CY82C599 required)
  1237.            -changed i82378ZB SIO and i82379AB SIO.A detection (it has no class
  1238.             code - now detected by vendor and device ID if 82434LX/NX present)
  1239.            -fixed CMOS size detection detecting falsely 256b on some boards
  1240.            -modified code to allow easier implementation of various flash
  1241.             access methods (external progammers, PCI cards...)
  1242.            -rewrote ALi FinALi support using these new methods (it was a lot
  1243.             easier now)
  1244.            -some cosmetic fixes (misaligned error messages, some german texts)
  1245.            -fixed flashing on PC Chips M715 board (i440LX) with Award
  1246.             BootBlock BIOS (GPO used for write protection)
  1247.            -added VIA VT8235 south bridge support
  1248.            -added STMicroelectronics M50LPW040, M50FW002 and M50LPW002 chips
  1249.            -added unprotect for STMicroelectronics LPC and FWH chips
  1250.            -found a way to unprotect Flash ROM on Abit BX133-RAID (GPO used),
  1251.             might work on other Abit i440BX based boards too
  1252.             BUT: Flashing failed with Winbond W49F002U - some cache problems?
  1253. 1.28       -fixed -SAVE paramter (it was completely broken)
  1254.            -display Chipset and Flash ROM when only -QUIT parameter specified
  1255.            -fixed bug causing reset of ITE LPC Super I/Os (resulting in floppy
  1256.             and COM&LPT ports not working until reboot)
  1257.            -fixed Macronix chip detection
  1258.            -fixed Atmel AT29Cxxx detection (again, it really works now)
  1259.            -fixed Atmel programming routine (chip remained unprotected)
  1260.            -fixed some SiS chipset support
  1261.            -fixed Utron 128KB support (again)
  1262.            -fixed showing SUCCESS when bootblock mismatch and user answered NO
  1263.            -fixed the detection routine erased vendor and device IDs from some
  1264.             Winbond and SST chips (detected properly once but then unknown,
  1265.             BIOS displayed "Unknown Flash Type" message)
  1266.            -added repair feature to repair the erased IDs (-repair parameter)
  1267.            -added support for ALi FinALi 486 chipset
  1268.            -enable/disable menu items after redetect with/without Flash ROM
  1269.            -verify now shows unchanged areas
  1270.            -removed $4B and $D5 IDs for Macronix MX28F1000P (they were there
  1271.             because of the detection bug which is now fixed)
  1272.            -added logging for north bridge methods
  1273.            -added support for UMC UM8881F+UM8886BF chipset (no datasheets,
  1274.             reverse engineering used)
  1275.            -fixed hang when running under Award BootBlock BIOS with
  1276.             uninitialized or absent graphics card
  1277.            -added user friendly filename editing, default file names when
  1278.             saving a file and file browser when opening a file (press ENTER on
  1279.             the prompt, TAB to change drive)
  1280.            -added I/O error checking for all file operations
  1281.            -added -REBOOT patameter to reboot after flashing using -E
  1282.            -added -BASE parameter to set ROM base address manually and allow
  1283.             UniFlash to run without PCI bus
  1284. 1.27       -added -MONO parameter for monochrome monitors
  1285.            -enhanced -PCIROM functionality, you can now manually specify
  1286.             a device by its BUS, DEVICE and FUNCTION numbers (decimal)
  1287.            -fixed HiNT VXPro-II (Utron UC85C501/502) 128KB Flash ROMs
  1288.            -added some VIA chipsets: ProSavage KM133(A), P4M266, P4X266(A)/333
  1289.            -added real VIA VT8233 support
  1290.            -fixed hang when EMM386.EXE is loaded (display error message now)
  1291.            -success chime sound also in emergency mode
  1292.            -fixed Atmel AT29Cxxx detection
  1293.            -added ITE IT8700F/8705F and IT8710 LPC Super I/O detection with
  1294.             SiS 540 and SiS 630 chipsets and all newer
  1295.            -added some SiS chipsets : SiS 635, SiS 640, SiS 645, SiS 645DX,
  1296.             SiS 650, SiS 730, SiS 735 and SiS 740 - I have no datasheets, but
  1297.             SiS 735 is tested and works
  1298.            -clear keyboard buffer before asking for file names and also on exit
  1299.            -fixed memory de-allocation bug when HIMEM.SYS is loaded
  1300. 1.26       -added Intel E7500 chipset with 82801CA (ICH3-S) I/O Controller Hub
  1301.            -added some ALi chipsets: Aladdin III (M1521 and M1523(B)) and
  1302.             Aladdin IV/IV+ (M1531(B))
  1303.            -ALi FINALi 486 chipset (M1489) is not supported because it doesn't
  1304.             map Flash ROM below 4GB
  1305.            -added AMD 760MPX chipset with AMD-768 South Bridge
  1306.            -added OPTi Vendetta 82C750 chipset (removed the old disabled code)
  1307.            -added HiNT VXPro-II chipset (I think that it's Utron UC85C501/502,
  1308.             because this one matches it and has programmable Mfg.&Device IDs)
  1309.            -added -QUIT parameter - quits when processed, all comands after
  1310.             will be ignored (useful use: "UNIFLASH -SAVE BACKUP.BIN -QUIT")
  1311.            -added German language support (by Gerald Bottcher)
  1312.            -PCI-to-ISA posted write buffer is disabled on ALi chipsets during
  1313.             flashing to fix problems with some Flash ROMs (e.g. EON)
  1314.            -added unprotect for SST49LF002A/003A/004A/008A FWHs
  1315. 1.25       -fixed crash in Windows on some machines - display error message
  1316.             (thanks to Alejando Pelaez)
  1317.            -pressing ESC in -chiplist will quit
  1318.            -CMOS size in log
  1319.            -added -CMOSS (Save CMOS), -CMOSR (Restore CMOS) and -CMOSC (Clear
  1320.             CMOS) options (they work also in Windows)
  1321.            -added support for 256b CMOS
  1322.            -fixed CMOS support to save/restore/clear also bytes 15 and 16
  1323.            -added ServerWorks ServerSet III LE and HE chipsets with Reliance
  1324.             NB6536 & NB6635 North Bridges (without any info from ServerWorks)
  1325.            -added National Semiconductor PicoPower Vesuvius-LS chipset
  1326.            -added National Semiconductor Geode GX1 CPU with North Bridge
  1327.             (Cyrix MediaGX) and CS5530(A) South Bridge (Cyrix CX5530(A))
  1328. 1.24       -added support for some ALi chipsets: Aladdin Pro IV and ALiMAGiK 1
  1329.            -fixed 256KB and 512KB support for ALi chipsets
  1330.            -added VIA Apollo VP3 with VT82C596 South Bridge
  1331.            -implemented Redetect Flash ROM function
  1332.            -AMI Flash Interface is no longer automatically enabled to prevent
  1333.             hangs. You must use "-ami" parameter to activate it.
  1334.            -added two more IDs for Macronix MX28F1000P - $4B and $D5
  1335.            -simplified detection routine - removed support for multiple Flash
  1336.             ROMs and removed all 16-bit wide ROMs, cleaned up the code
  1337.            -pressing Q in -chiplist will quit (like MORE.COM)
  1338.            -fixed Macronix MX29F002(N)T slow erase bug
  1339.            -added Reliance/ServerWorks OSB4 South Bridge
  1340. 1.23       -added Italian language support (by Enrico Antongiovanni)
  1341.            -added timeout to GenPageProgB and GenPageProgW (to prevent hangs
  1342.             with boot block protection enabled on Winbond Flash ROMs)
  1343.            -added auto-logging feature (-LOG parameter)
  1344.            -added support for Intel 830MP and 845 chipsets
  1345.            -new keyboard handler doesn't use BIOS - this allows UniFlash to
  1346.             work correctly under Award BootBlock BIOS (tested)
  1347.            -added simple help on the bottom of screen in menu
  1348.            -added new program/erase routines for Winbond Sectored Flash ROMs
  1349.             (may fix Winbond W29F002U?)
  1350.            -tried to fix but still not fixed SiS 501/5101/5501 support
  1351.            -some VIA reverse engineering (reserved registers seems to be used)
  1352.             but new VIA/AMD chipsets still not working (if you have "Flash
  1353.             Write Protect" option in BIOS, your chipset will work when you
  1354.             disable it)
  1355. 1.22       -added error messages: running under Windows, PCI bus not found
  1356.            -fixed Flash ROM write protect enable/disable - fixed possible
  1357.             chipset register corruption
  1358.            -added new delay routine based on Time Stamp Counter (TSC), it's
  1359.             used on all CPUs that supports TSC (Pentium+), old CPUs use the
  1360.             old routine. This fixed all problems with slow performance on
  1361.             fast computers
  1362.            -modified waiting times for Page Write Flash ROMs (most of Atmel,
  1363.             SST and Winbond Flash ROMs) to prevent lock-ups
  1364.            -fixed i430MX South Bridge detection (thanks to Josh Little but he
  1365.             paid hard for that - his notebook doesn't work anymore because
  1366.             Intel 28F004-T support doesn't work)
  1367.            -fixed a _VERY_ NASTY BUG in Bulk Erase/Need Blanking chip support
  1368.             this one was there probably from the beginning of UniFlash and
  1369.             actually caused the same byte to be flashed to entire chip...
  1370.             This fixed almost all Bulk Erase/Need Blanking chips.
  1371.            -Nils Emil P. Larsen tested these Bulk Erase/Need Blanking chips,
  1372.             they're working CAT28F010, MX28F1000P, Intel 28F010 and also H.T.
  1373.             M21561 (which is actually MX28F1000P)
  1374.            -added support for Intel 860 chipset (Xeon) and ALi Aladdin V
  1375.            -added support for 1MB Flash ROMs with VIA VT82C596(A|B) and
  1376.             VT82C686(A) South Bridges
  1377.            -doesn't exit when no Flash ROM detected in PCI Option ROM mode
  1378.            -chiplist now pauses after each screen (no need for external more
  1379.             program) but not when stdout is redirected
  1380.            -fixed memory corruption when using -chiplist (thanks to Marusceac
  1381.             Claudiu Florin)
  1382.            -beep after successful flashing
  1383.            -heavy menu modifications, removed expert and debug modes - they're
  1384.             not needed anymore, add Home,PgUp/End,PgDown keys
  1385.            -removed BIOS info (I haven't seen it working anywhere)
  1386.            -added some Intel chips: 28F008-T series and 28F008-B series
  1387.            -added STMicroelectronics Flash ROMs: M28F256, M28F512, M28F101,
  1388.             M28F102, M28F201, M29F512B, M29F010B, M29F040(B), M29F080A,
  1389.             M29F016B, M29F002(B)(N)T, M29F002(B)B, M29F100(B)T, M29F100(B)B,
  1390.             M29F200(B)T, M29F200(B)B, M29F400(B)T, M29F400(B)B, M29F800AT,
  1391.             M29F800AB, M29F160BT, M29F160BB, M29W512B, M29W010B, M29W022BT,
  1392.             M29W022BB, M29W040(B), M29W200BT, M29W200BB, M29W400(B)T,
  1393.             M29W400(B)B, M29W800(A)T, M29W800(A)B, M29W160BB/DB, M29W004(B)T,
  1394.             M29W004(B)B, M29W008(A)T, M29W008(A)B, M50FW040 (FWH),
  1395.             M50FW080 (FWH) and M50LPW080 (LPC)
  1396.            -added Texas Instruments Flash ROMs: TMS28F210, TMS29xF040 and
  1397.             info about the others into docs
  1398.            -added Fujitsu Flash ROMs: MBM29F002TC, MBM29F002BC, MBM29F200TC,
  1399.             MBM29F200BC, MBM29F400TC, MBM29F400BC, MBM29F040C, MBM29F033C,
  1400.             MBM29LV160TE, MBM29LV160BE, MBM29PL160TD and MBM29PL160BD
  1401.            -modified Mosel support for SyncMOS chips F29C31004B and F29C31400T
  1402.            -fixed a bit PCI Option ROM enabling (for AGP cards), but flashing
  1403.             still does not work (looks like writes to ROM are ignored - like
  1404.             write protection, the Flash ROM is not responding to commands)
  1405.            -simplified the detection routine (note: new one is still not done)
  1406. 1.21       -added support for SiS chipsets: 85C496+497, 85C501/5101/5501,
  1407.             5511, 5571,5591/5592, 5596, 5597/5598/5581/5120, 530, 540, 600,
  1408.             620 and 630 (all untested). It's unbelievable, but they are using
  1409.             5 (!) different methods to enable Flash ROM write and what's more,
  1410.             all their south bridges have the same device ID - $0008 (SiS 540
  1411.             and 630 can have either $0008 or $0018).
  1412.            -added support for SMSC VictoryBX-66 chipset
  1413.            -added support for Winbond/Symphony Labs W83C553F South Bridge
  1414.            -added support for ITE South Bridges IT8871F/2F and IT8888F
  1415.            -fixed Flash ROM detection - Device IDs can have even parity
  1416.            -changed sector structure array - can now hold more sectors (upto
  1417.             5*65535), 128b to 8MB each (see addchip.faq)
  1418.            -added support for Alliance Semiconductor Flash ROMs: AS29F040,
  1419.             AS29F002T, AS29F002B, AS29LV400T, AS29LV400B, AS29F200T,
  1420.             AS29F200B, AS29LV800T and AS29LV800B
  1421.            -added some AMD Flash ROMs: Am29LV001BT, Am29LV001BB, Am29LV010B,
  1422.             Am29F004BT, Am29F004BB, Am29LV040B, Am29LV081B, Am29LV008(B)T,
  1423.             Am29LV008(B)B, Am29LV800BT, Am29LV800BB, Am29SL800CT, Am29SL800CB,
  1424.             Am29F016(B), Am29F017B, Am29LV017B, Am29LV116BT, Am29LV116BB,
  1425.             Am29F160DT, Am29F160DB, Am29LV160BT/DT, Am29LV160BB/DB,
  1426.             Am29SL160CT, Am29SL160CB, Am29PL160CB, Am29F032B, Am29LV033C,
  1427.             Am29LV320DT, Am29LV320DB, Am29LV065D
  1428.            -added some Atmel Flash ROMs: AT29LV512, AT49x512, AT49x010,
  1429.             AT49x001(N)T, AT49x001(N), AT49x002(N)T, AT49x002(N),
  1430.             AT49x2048(A), AT49x4096(A), AT49x008AT, AT49x8192(A)T,
  1431.             AT49x8192(A), AT49x8011T, AT49x8011, AT49x160/161(4)T,
  1432.             AT49x160/161(4), AT49BV320T/321T, AT49BV320/321
  1433.            -added some Catalyst Flash ROMs: CAT28F010, CAT28F020, CAT28F102,
  1434.             CAT28F512
  1435.            -added EON Flash ROMs: EN29F040, EN29F080, EN29F800T, EN29F800B,
  1436.             EN29F002T, EN29F002B
  1437.            -added Hyundai Flash ROMs: HY29F002T, HY29F002B, HY29F040,
  1438.             HY29F040A, HY29F080, HY29F400T, HY29F400B, HY29F800T, HY29F800B,
  1439.             HY29LV160T, HY29LV160B
  1440.            -added IMT Flash ROMs: IM29F001T, IM29F001B, IM29F002T, IM29F002B,
  1441.             IM29F004T, IM29F004B, IM29LV004T, IM29LV004B
  1442.            -added some Intel chips: 28F256A, 28F512, 28F004Sx, 28F008Sx,
  1443.             28F008SA, 28F016Sx, 28F016S5/SA, 28F320J3A, 28F320J5, 28F640J3A,
  1444.             28F640J5, 28F128J3A
  1445.            -added ISSI (Integrated Silicon Solution) Flash ROMs: IS28F010 and
  1446.             IS28F020
  1447.            -removed Macronix MX28F1000PC and MX28F1000PPC (not existing)
  1448.            -added some Macronix chips: MX28F2000P, MX28F2000T, MX29F100T,
  1449.             MX29F100B, MX28F002T, MX28F002B, MX29F001T, MX29F001B,
  1450.             MX29F002(N)T, MX29F002(N)B, MX29F022T, MX29F022B, MX29F200T,
  1451.             MX29F200B, MX29F004T, MX29F004B, MX29F400T, MX29F400B, MX29LV004T,
  1452.             MX29LV004B, MX29LV400T, MX29LV400B, MX29F040, MX29LV040, MX29F080,
  1453.             MX29LV081, MX29F800T, MX29F800B, MX29LV008T, MX29LV800T,
  1454.             MX29LV800B, MX29F016, MX29L1611, MX29L1611G, MX29F1610A,
  1455.             MX29LV160T, MX29LV160B, MX29F1615, MX29L3211
  1456.            -added Mosel Vitelic Flash ROMs:
  1457.             V29C51000T, V29C51000B, V29C51001T, V29C51001B, V29C51002T,
  1458.             V29C51002B, V29C51004T, V29C51004B, V29C51400T, V29C51400B,
  1459.             V29C31004T, V29C31004B, V29LC51000, V29LC51001, V29LC51002
  1460.            -added PMC Flash ROMs: Pm39LV512R, Pm39LV010R, Pm29F002T,
  1461.             Pm29F002B, Pm29F004T/5V or Pm29LV104T, Pm29F004B or Pm29LV104B
  1462.            -added some SST Flash ROMs: 29SF512, 29VF512, 29SF010, 29VF010,
  1463.             29SF020, 29VF020, 29SF040, 29VF040, 39SF512, 39xF512, 39S010(A),
  1464.             39xF010, 39SF020(A), 39xF020, 39SF040, 39xF040, 39xF080, 39xF016,
  1465.             39xF200A, 39xF400A, 39xF800A, 39xF160, 49LF002(A), 49LF003A,
  1466.             49LF004, 49LF004A, 49LF008, 49LF008A, 49LF020, 49LF030, 49LF040,
  1467.             49LF080
  1468.            -added some Winbond Flash ROMs: W29C040, W49F002U, W49V002(A),
  1469.             W49V002F(A), W29F102 or W49F102, W49L102, W49F201, W49L201
  1470.            -some code size optimizations
  1471. 1.20       -added support for these AMIC chips: A29001(1)T, A29001(1)B,
  1472.             A29010, A29002(1)T, A29002(1)B, A29400T, A29400B and A29040
  1473.             They're all sectored and use AMD commands.
  1474.             (For Matt Choudoir's broken ABIT KT7A with AMIC A29002T)
  1475.             A29002(1)T tested and works correctly, others are untested.
  1476.            -added support for newer VIA chipsets (all untested)
  1477.             Apollo MVP4, Apollo Pro, Apollo Pro Plus/133/133A,
  1478.             Apollo ProMedia, Apollo Pro 133Z/PM133, Apollo KX133,
  1479.             Apollo KT133(A), Apollo KT266, Apollo Pro 266.
  1480.             North Bridges: VT8501, VT82C691/693(A)/694X, VT82C693(A), VT8601,
  1481.             VT8605, VT8371, VT8363(A), VT8366, VT8633
  1482.             South Bridges: VT82C686(A), VT8231, VT8233 (last two may or may
  1483.             not work because I don't have datasheets).
  1484.             Plus some north bridges that aren't used anywhere (but are in
  1485.             VIA's INF file) - VT8653, VT8662, VT8615, VT8361, VT3133.
  1486.            -added support for AMD 750, 760 and 760MP chipsets (751,761 and
  1487.             762 north bridges, 756 and 766 south bridges). Registers are
  1488.             almost same as VIA. Untested.
  1489. 1.19       -added support for Intel 8xx chipsets (Hub Architecture):
  1490.             i810, 810E, 810E2, 815, 815E(P), 815EM, 820, 820E, 840, 850
  1491.             with these I/O controller hubs:
  1492.             82801AA(ICH), 82801AB(ICH0), 82801BA(ICH2), 82801BAM(ICH2-M)
  1493.             (they're all not tested)
  1494.            -fixed ALi chipset detection
  1495.            -M1543 now support 512KB ROMs, but only some revisions of this chip
  1496.             can really support them (and according to ALi, there is no
  1497.             software way to detect that)
  1498. 1.18       -I (Rainbow Software) am continuing the development of this program
  1499.             after it was abandoned for two years
  1500.            -added support for i440BX/ZX and i440GX chipsets
  1501.            -added support for ALi M1543 south bridge and ALi M1621 north
  1502.             bridge (ALi Aladdin Pro II chipset)
  1503.            -added some info about ASD chips into this DOC
  1504.            -added support for Intel 82802AB(4Mb)/AC(8Mb)Firmware Hubs
  1505.            -added support for Atmel AT49F002(N)T chip
  1506. 1.17b      -fixed a bug in the -FORCE option, should work now
  1507.            -still having trouble correctly detecting flash chips, we can use
  1508.             all the input we can get on which chips are and aren't correctly
  1509.             identified by UNIFLASH !
  1510. 1.17       -pre-1.20 release because of some important fixes, still working
  1511.             on some things we promised for 1.20, though
  1512.            -fixed flashing problems with Macronix & AMD chips
  1513.            -Integrated English & French version into one executable to avoid
  1514.             having to keep 2 versions synchronized
  1515.            -Cleaned up chipset detection
  1516.            -known bugs: chip detection still not 100% accurate
  1517.             (we're working on it, this will be fixed in v1.20)
  1518. 1.16d      -Added AMI Flash Interface support
  1519.            -Added the "Additional BIOS Info" option
  1520.            -Added the Macronix MXIC 28F1000PPC/12V chip
  1521.             (not officially released by Adam's request)
  1522. 1.16c      -Made the detection routine more accurate
  1523. 1.16b      -Removed some (debugging?) code that messed up detection
  1524. 1.16       -Fixed a stupid bug in the chip detection part, which made it
  1525.             impossible to identify Atmel chips, for example.
  1526.            -Tried to add TI chips and after long hours of work and of
  1527.             downloading datasheets figured out that TI chips are just
  1528.             "remarked" AMD & Intel chips (the same Mfg & Id numbers), so TI
  1529.             chips will be recognised as AMD or Intel ones.
  1530.            -Made the source code clearer. Wrote a FAQ explaining how to add
  1531.             your own chips.
  1532.            -Added the Intel 28F010/12V and 28F020/12V chips
  1533.            -Translation of the whole thing to french. The english 1.16 version
  1534.             equals french 1.00FRENCH version
  1535. 1.15       -Fixed problems with AMD flash chips
  1536.            -Added VIA 82C570 chipset support
  1537.            -Tested Intel 28F001BX-T/28F001BN-T support
  1538.            TO DO before final release of V1.15: fix extended memory detection,
  1539.            does not work ok on a friends' system ...
  1540. 1.14       -Added Macronix support
  1541.            -Added SST 28EE011 flash chip
  1542.            -Added AMD Am28F010, Am28F010A, Am28F020, Am28F020A, Am28F256
  1543.             Am28F256A, Am28F512 and Am28F512A flash chips
  1544.            -Removed valid PCI ROM check so it is possible to flash a ROM on a
  1545.             PCI card that does not (yet) contain a valid ROM
  1546.            -Added some safety stuff:
  1547.             -cache disabled during flashing (having the cache enabled seems to
  1548.              be a problem with some Cyrix chips (or chip/chipset combo's ?))
  1549.             -interrupts now fully disabled during actual communication with
  1550.              the flash chip for increased reliability
  1551.            -added multiple flash chips/single ROM image support (experimental)
  1552. 1.13       -Added Catalyst support
  1553.            -Added OPTi chipset support (for 82C750 'Vendetta')
  1554.            -Added Intel 28F400/28F004 flash chips
  1555.            -Completely rewrote PCI option ROM support (still experimental)
  1556. 1.12       -Fixed problem ID-ing Intel chips (oops)
  1557.            -Made first attempt at supporting PCI option ROMS (experimental)
  1558. 1.11       -Added Atmel support
  1559. 1.1        -Fixed memory allocation bug with sectored (Intel,AMD) flash ROM
  1560.             chips
  1561.            -Added VIA chipset support
  1562. 1.0        -First public release
  1563.  
  1564.  
  1565. 9.1            KNOWN BUGS
  1566. -------------------------
  1567.  - Intel 28F004-T doesn't work
  1568.  - PCI Option ROM Flashing (-pcirom parameter) doesn't work on many cards
  1569.  - 256KB BIOSes don't work on some i430VX/HX boards (AWDFLASH works!)
  1570.  - Some VIA and AMD chipsets don't work - maybe because of non-standard flash
  1571.    write protection on some boards.
  1572.  - Garbage on screen instead of flashing - on Asus P5A board with Aladdin V
  1573.    and 256K Flash ROM, but it works OK on Micronics C200 (same chipset and
  1574.    128K Flash ROM). On PC Partner VIB8x4DS board with VIA Apollo VPX, UniFlash
  1575.    flashes the SyncMOS F29C51002T chip OK but then hangs with garbage on
  1576.    screen. This problem appears to be associated with SyncMOS Flash ROMs only.
  1577.  - Many Abit boards do not work - looks like undocumented write protection
  1578.  
  1579.  
  1580. 9.2            What's missing
  1581. -----------------------------
  1582.  - Support for ServerWorks, UMC, new VIA and new SiS chipsets because
  1583.    datasheets are unavailable (these companies are simply ignoring e-mails)
  1584.    I can't do much with only "unofficial" info.
  1585.  - Support for some exotic Flash ROMs like Intel 82802AA 2mbit Firmware Hub or
  1586.    Bright BM29FS040 (no datasheets available)
  1587.  
  1588.  
  1589. 10.0           Compatibility tests
  1590. ----------------------------------
  1591.  
  1592. Here is a list of tested & working motherboards/Flash ROM chip combinations.
  1593.  
  1594. Manufacturer  | Model + revision   | Chipset        | Flash ROM chip used
  1595. ------------------------------------------------------------------------------
  1596. ASUSTeK       | T2P4 rev 2 & 3.10  | Intel 430HX    | SST 29EE010/5V
  1597. Expertboard   | 8661               | Intel 430VX    | Winbond W29EE011/5V
  1598. Soyo          | 5TA2               | Intel 430FX    | SST 29EE010/5V
  1599. Shuttle       | Hot-569            | Intel 430TX    | Atmel AT29C010A/5V
  1600. Shuttle       | Hot-565            | Intel 430TX    | Winbond W29EE011/5V
  1601. Shuttle       | Hot-603            | AMD 640        | Winbond W29EE011/5V
  1602. ASUSTeK       | P2B rev 1.10       | Intel 440BX    | Winbond W29EE011/5V
  1603. PC Chips      | M726 v3.4A         | Aladdin Pro 2  | ASD AE29F1008/5V
  1604. Abit          | BX6 rev. 2         | Intel 440BX    | AMIC A29002T/5V
  1605. MicroStar MSI | MS-5120 ver 1      | Intel 430FX    | Winbond W29EE011/5V
  1606. Abit          | BE6-R2             | Intel 440BX    | Winbond W29C020/5V
  1607. DFI           | P2-XLX             | Intel 440LX    | Winbond W29EE011/5V
  1608. FIC           | PT-2006            | Intel 430VX    | Intel 28F001/12V
  1609. PC Chips      | M726 v3.4A         | Aladdin Pro 2  | Winbond W29C020/5V
  1610. Abit          | BX6-R2             | Intel 440BX    | Winbond W29EE011/5V
  1611. Abit          | BX6-R2             | Intel 440BX    | Winbond W29C020(C)/5V
  1612. Abit          | BX6-R2             | Intel 440BX    | SST 29EE010/5V
  1613. Abit          | BX6-R2             | Intel 440BX    | CAT28F010/12V
  1614. Abit          | BX6-R2             | Intel 440BX    | Macronix MX28F1000P/12V
  1615. Abit          | BX6-R2             | Intel 440BX    | Intel 28F010/12V
  1616. AOpen         | AP5C/P             | Intel 430FX    | SST29EE010/5V
  1617. Gigabyte      | GA586SG            | SiS 5591+5595  | Atmel AT29C010A/5V
  1618. Chaintech     | 5IFM0              | Intel 430HX    | Macronix MX29F001B/5V
  1619. ASUSTeK       | P2B rev 1.10       | Intel 440BX    | Atmel AT49F002T/5V
  1620. Micronics     | C200               | Aladdin V      | SST 29EE010/5V
  1621. MicroStar MSI | MS-5120 ver 1      | Intel 430FX    | SST 29EE010/5V
  1622. MicroStar MSI | MS-5120 ver 1      | Intel 430FX    | Macronix MX28F1000P/12V
  1623. MicroStar MSI | MS-5120 ver 1      | Intel 430FX    | H.T. M21032T/12V
  1624. PC Chips      | M726 v3.4A         | Aladdin Pro 2  | Macronix MX29F002(N)T/5V
  1625. PC Chips      | M726 v3.4A         | Aladdin Pro 2  | EON EN29F002NT/5V
  1626. Mercury/Kobian| KOB 694X FSX r1.0  | Apollo Pro 133A| SST 39VF020/3V (PLCC32)
  1627. QDI           | LegendX            | Intel 440LX    | Winbond W29C020(C)/5V
  1628. PC Chips      | M741LMRT           | SiS 620+5595   | SST 29EE010/5V
  1629. PC Partner    | VIB8x4DS           | Apollo VPX     | SyncMOS F29C51002T/5V
  1630. Soyo          | 5EMA+ v1.1         | Apollo MVP3    | Macronix MX29F001T/5V
  1631. LuckyStar     | K7VAT+             | Apollo KT133   | Winbond W29EE011/5V
  1632. LuckyStar     | K7VAT+             | Apollo KT133   | Winbond W29C020(C)/5V
  1633. LuckyStar     | K7VAT+             | Apollo KT133   | SST 39SF020(A)/5V
  1634. Chaintech     | 7AIA5              | Apollo KT133A  | Winbond W49F002U/5V
  1635. PC Chips      | M571               | SiS 5598       | Winbond W29EE011/5V
  1636. PC Partner    | P5VB3+ Rev. B      | Apollo MVP3    | AMD Am29F010A/5V
  1637. Mercury/Kobian| KOB 630E FSFx r1.1 | SiS630+IT8705F | EON EN29F002T/5V
  1638. ECS           | K7S5A              | SiS735+IT8705F | Winbond W49F002U/5V
  1639. PowerTech     | MB532 v1.0         | Intel 430FX    | SST 29EE010/5V
  1640. Matsonic      | MS6260S rev.1.6A   | Aladdin V      | ASD AE29F1008/5V
  1641. PC Partner    | TXB820DS           | Intel 430TX    | Atmel AT29C010A/5V
  1642. PC Chips      | M570 v1.3          | SiS 5591+5595  | Atmel AT29C010A/5V
  1643. Gemlight/DTK  | GMB-P57IPS-V1      | Intel 430TX    | Winbond W29EE011/5V
  1644. PC Chips      | M918 V1.2A         | FinALi 486     | H.T. M21032T/12V
  1645. PC Chips      | M918 V1.2A         | FinALi 486     | Macronix MX28F1000P/12V
  1646. PC Chips      | M918 V1.2A         | FinALi 486     | Winbond W29EE011/5V
  1647. PC Chips      | M918 V1.2A         | FinALi 486     | Atmel AT29C010A/5V
  1648. GVC/BCM       | FR500              | SiS 5598       | AMD Am29F002(N)(B)T/5V
  1649. Asus          | A7V266-E           | Apollo KT266A  | SST 49LF020/3V
  1650. PC Chips      | M537DMA            | Apollo VPX     | H.T. M20271H/12V
  1651. QDI           | BrillianX 1        | Intel 440BX    | SST 29EE020/5V
  1652. ECS(?)        | TD-4IP-UMC-AIO     | UM8881F+8886BF | Winbond W29EE011/5V
  1653. PC Chips      | M919 V3.4B/F       | UM8881F+8886BF | Macronix MX28F1000P/12V
  1654. PC Chips      | M919 V3.4B/F       | UM8881F+8886BF | Winbond W29EE011/5V
  1655. PC Chips      | M715 V1.2A         | Intel 440LX    | ASD AE29F1008/5V
  1656. Zida          | 4DPS               | SiS 85C496+497 | SST 29EE010/5V
  1657. PC Chips      | M571LMR v5.0       | SiS 5598       | Macronix MX29F001T/5V
  1658. Iwill         | P55A2 v1.0         | Intel 430FX    | Intel 28F001BX/BN-T/12V
  1659. Asus          | P2B-F              | Intel 440BX    | Winbond W29C020(C)/5V
  1660. QDI           | WinneX 2 P6I810/W2 | Intel 810      | Intel 82802AB/3.3V
  1661. Asus          | P5A Rev 1.04       | ALi Aladdin V  | SST 39SF020(A)/5V
  1662. AOpen         | AP43               | SiS 85C496+497 | SST 29EE010/5V
  1663. FIC           | PT-2006 v2.2       | Intel 430VX    | Winbond W29C020(C)/5V
  1664. FIC           | PT-2006 v2.2       | Intel 430VX    | H.T. M38705/12V
  1665. MicroStar MSI | MS-5120 ver 1      | Intel 430FX    | Macronix MX28F1000/12V
  1666. PC Chips      | Unknown Socket 4   | ALi Aladdin    | ASD AE29F1008/5V
  1667. PC Chips      | Unknown Socket 4   | ALi Aladdin    | Macronix MX28F1000/12V
  1668. c't Flasher   | 8-bit ISA card     |                | AMD Am29F040B/5V
  1669. c't Flasher   | 8-bit ISA card     |                | Catalyst CAT28F010/12V
  1670. c't Flasher   | 8-bit ISA card     |                | Intel 28F001BX/BN-T/12V
  1671. QDI           | Titanium IB+ 1.0   | Intel 430TX    | SST 29EE010/5V
  1672. QDI           | KinetiZ 7B 1.0     | Apollo KT133   | SST 39SF020(A)/5V
  1673. QDI           | Advance 3 1.0      | Apollo MVP3    | SST 29EE020/5V
  1674. QDI           | BrillianX 9 2.0    | Intel 440BX    | Winbond W29C020(C)/5V
  1675. PC Chips      | M598MR v1.3B       | SiS 530        | Macronix MX29F002(N)T/5V
  1676. Abit          | BX133-RAID         | Intel 440BX    | PMC Pm29F002T/5V
  1677. QDI           | Advance 5/133 1.0  | Apollo Pro 133 | Winbond W29C020(C)/5V
  1678. c't Flasher   | 8-bit ISA card     |                | AMIC A29002T/5V
  1679. c't Flasher   | 8-bit ISA card     |                | AMIC A290021T/5V
  1680. c't Flasher   | 8-bit ISA card     |                | AMIC A29002T/5V
  1681. c't Flasher   | 8-bit ISA card     |                | ASD AE49F2008/5V
  1682. MicroStar MSI | MS-6337 v3.0       | Intel 815EP    | SST 49LF002(A)/3.3V
  1683. Procomp       | BVK2A=BioStar M7VKB| Apollo KT133(A)| AMIC A29002(1)T/5V
  1684. LiPPERT       | Thunderbird        | Intel 8255GME  | Intel 82802AC/3.3V
  1685. LiPPERT       | Thunderbird        | Intel 8255GME  | SST 49LF008A/3.3V
  1686. LiPPERT       | Thunderbird        | Intel 8255GME  | Atmel AT49LW080/3.3V
  1687. Gigabyte      | GA-6WMMC7-1        | Intel 810      | Intel 82802AB/3.3V
  1688. AOpen         | AP5CS              | SiS 5501       | Intel 28F010/12V
  1689. LuckyStar     | 6VBX2 rev 1.1      | Apollo Pro     | Winbond W29EE011/5V
  1690. Abit          | KG7-Lite           | AMD761+686B    | PMC Pm29F002T/5V
  1691. LuckyStar     | 5MVP3 rev 4.0+     | Apollo MVP3    | Winbond W29C011/5V
  1692. c't Flasher   | 8-bit ISA card     |                | SST 39VF020/3V (PLCC32)
  1693. Gemlight/DTK  | GMB-P6BIAK-V1 RB   | Intel 440BX    | Winbond W29C020/5V
  1694. ASRock        | K7S8XE+ r1.03      | SiS748+W83697HF| Winbond W49F002U/5V
  1695. ECS           | K7VTA3 rev. 1      | VIA KT266A     | Winbond W49F002U/5V
  1696. Mercury       | KOB P4X266NFSX v1.0| VIA P4X266     | Winbond W49F002U/5V
  1697. c't Flasher   | 8-bit ISA card     |                | SST 29EE010/5V
  1698. A-Trend       | ATC-1545           | OPTi Viper M   | SST 29EE010/5V
  1699. c't Flasher   | 8-bit ISA card     |                | Macronix MX29F001T/5V
  1700. Abit          | PT5 rev 2.11       | Intel 430FX    | Macronix MX28F1000P/12V
  1701. Asus          | A7V133 rev 1.05    | Apollo KT133A  | EON EN29F002NT/5V
  1702. Asus          | TXP4 rev 1.02      | Intel 430TX    | Intel 28F001BX/BN-T/12V
  1703. Asus          | TXP4 rev 1.02      | Intel 430TX    | Macronix MX28F1000P/12V
  1704. Gigabyte      | GA-586ATV rev 1A   | Intel 430VX    | SST 29EE010/5V
  1705. Gigabyte      | GA-7DPXDW-P        | AMD 760MPX     | SST 49LF020A/3V
  1706. Abit          | BF6                | Intel 440BX    | Winbond W29C020C/5V
  1707. Microstar MSI | MS-6337LE5         | Intel 815EP    | SST 49LF002(A)/3.3V
  1708. ECS           | K7VZA rev 3.0      | Apollo KT133A  | Winbond W49F002U/5V
  1709. Microstar MSI | MS-6153VA v2.1     | Apollo Pro 133 | Winbond W29C020C/5V
  1710. Abit          | KT7-RAID v1.02     | Apollo KT133   | Winbond W49F002U/5V
  1711. Abit          | KT7A v1.0          | Apollo KT133A  | PMC Pm29F002T/5V
  1712. QDI           | LegenX V           | Intel 440LX    | SST 29EE020/5V
  1713. DTK           | PRM0080I VBX RG    | Apollo Pro Plus| Winbond W29C020C/5V
  1714. ECS           | K7S6A rev 1.0      | SiS745+IT8705F | EON EN29F002T/5V
  1715. Asus          | A7V266 rev.1.07.   | Apollo KT266   | SST 49LF020/3V
  1716. DFI           | CS62-TC rev.B      | Intel 815EP    | SST 49LF002A/3.3V
  1717. Asus          | A7V8X-X            | Apollo KT400A  | SST 49LF020/3V
  1718. Abit          | ZM6                | Intel 440ZX    | Winbond W29C020(C)/5V
  1719. Asus   [-ASUS]| A7V133-C rev.1.05. | Apollo KT133A  | Winbond W49F002U/5V
  1720. Gigabyte      | GA-586VX rev 3.33  | Intel 430VX    | SST 29EE010/5V
  1721. Shuttle       | AV11 v3.0          | Apollo Pro 133 | Winbond W29C020(C)/5V
  1722. AOpen         | MX36LE             | Apollo ProMedia| SST 39SF020(A)/5V
  1723. PCPartner     | K333ASA-270        | Apollo KT333   | Winbond W49F002U/5V
  1724. MicroStar MSI | MS-6340 ver.1      | Apollo KT133   | Winbond W49F002U/5V
  1725. MicroStar MSI | K7T266 Pro2 v2.0   | Apollo KT266   | Winbond W49F002U/5V
  1726. MicroStar MSI | KT3 Ultra 2-R v1.0 | Apollo KT333   | Winbond W49F002U/5V
  1727. Asus          | TUV4X              | Apollo Pro 133T| SST 39SF020(A)/5V
  1728. TrangBow      | TB-6BX             | Intel 440BX    | Atmel AT29C010(A)/5V
  1729. Abit          | BE6                | Intel 440BX    | Winbond W29C020(C)/5V
  1730. Abit          | VA-20              | VIA KM400A     | EON EN29F002(A)T/5V
  1731.  
  1732. Note: [-ASUS] means that Asus flash interface (-ASUS parameter) must be used
  1733.  
  1734. UniFlash does NOT work on boards made by Intel. They use custom BIOS write
  1735. protection and have soldered Flash ROM chips (often in TSOP package) - so
  1736. there's nothing to hot-flash. They have recovery mode (activated by jumper)
  1737. in case something goes wrong with the BIOS.
  1738.  
  1739.  
  1740. 11.0            Beta testing stuff
  1741. ----------------------------------
  1742.  
  1743. We would like to extend our thanx to the following people who've been
  1744. very helpful with beta testing this program.
  1745. NOTE: YOU can be on this list too! All you have to do is send
  1746. information on a system where UNIFLASH doesn't work and help with
  1747. getting it to work on that system.
  1748. Please help us in making UNIFLASH the universal and reliable tool we had
  1749. in mind when we started this project. Thanx in advance!
  1750.  
  1751.                 The heroes gallery (random order)
  1752.                 ---------------------------------
  1753.                 Enrico Antongiovanni
  1754.                 Wim Bervoets
  1755.                 Michael L. Croswell
  1756.                 Polyvios Simopoulos
  1757.                 Matthias David Siebler
  1758.                 Matt Choudoir
  1759.                 Nils Emil P. Larsen (really big thanks)
  1760.                 Josh Little
  1761.                 Tom Wiener
  1762.                 Dennis Schulz (BIG thanks - provided 5 chips and wanted only
  1763.                                one of them back!)
  1764.                 Miha Ovcak
  1765.                 Alejando Pelaez
  1766.                 RusH
  1767.                 David Russell
  1768.                 Highlander
  1769.                 Kuzvesov
  1770.                 Spec
  1771.                 Ernst Ahlers (c't Flasher author)
  1772.                 Alfred Glass, Alex Student, Jurgen Stauffer
  1773.                   at LiPPERT Automationstechnik GmbH
  1774.                 Marc E.
  1775.                 Marek Palka
  1776.                 Peter Krauss
  1777.                 Richard Guinness
  1778.  
  1779.  
  1780. 12.0            Biz support
  1781. ---------------------------
  1782.  
  1783. We would like to thank the following people at the various flash ROM
  1784. and chipset manufacturers for their support (in random order):
  1785.  
  1786.             Scotts Chen at Macronix International Co., Ltd.
  1787.             Darlene Browne at Acer Laboratories, Inc., (USA), Administrator
  1788.             Niel Smith, Application Engineering Manager, ALI USA
  1789.             Henry Ho at Macronix International Co., Ltd.
  1790.             Michael Solinas at Silicon Storage Technology, Inc. (SST), USA
  1791.             Phillip Chang at Megawin Technology Co., Ltd.
  1792.             Christopher Emerson and David Chu at Cypress Semiconductor Corp.
  1793.  
  1794.  
  1795. Thanks goes to Intel - all datasheets are freely available on their web page
  1796. upon release of new hardware. Guess why are Intel chipset the most compatible.
  1797. The companies in the list below should take this as an example of developer
  1798. support.
  1799.  
  1800. I would like NOT to THANK TO following COMPANIES for providing NO SUPPORT
  1801. for independent developers and NOT REPLYING TO E-MAILS:
  1802.  
  1803.             Silicon Integrated Systems (SiS)
  1804.             United Microelectronics Corporation (UMC)
  1805.             ServerWorks
  1806.             NVIDIA Corporation
  1807.  
  1808. I finally got some real e-mail from VIA, but only bad news:
  1809. "At this time, datasheets are only available to manufacturers under non
  1810. disclosure agreement who have a genuine application they are developing. This
  1811. policy is currently under review but at this time I cannot provide the
  1812. datasheets to you."
  1813.  
  1814. ============================== END OF DOCUMENT ===============================